Как сделать имя кнопки Command динамическим в Excel?
В этой статье рассказывается о том, как сделать так, чтобы имя кнопки Command изменялось динамически при изменении значения указанной ячейки. Например, когда значение в ячейке A1 изменится на «test», имя определенной кнопки Command автоматически изменится на «test».
Сделайте имя кнопки Command динамическим с помощью значения ячейки посредством кода VBA
Сделайте имя кнопки Command динамическим с помощью значения ячейки посредством кода VBA
Следующий код VBA поможет вам сделать имя кнопки Command динамическим в зависимости от значения указанной ячейки на листе. Пожалуйста, действуйте следующим образом.
1. Нажмите Разработчик > Вставить > Кнопка команды (Элемент управления ActiveX), чтобы вставить кнопку команды на лист. См. скриншот:
2. После вставки кнопки команды щелкните правой кнопкой мыши вкладку листа и выберите Просмотр кода из контекстного меню, как показано на скриншоте ниже:
3. В открывшемся окне Microsoft Visual Basic for Applications скопируйте и вставьте приведенный ниже код VBA в окно.
Код VBA: Сделать имя кнопки Command динамическим с помощью значения ячейки
Dim xStr As String
Private Sub Worksheet_Change(ByVal Target As Range)
Dim xShapeRg As ShapeRange
On Error Resume Next
If Not Application.Intersect(Target, Range("A1")) Is Nothing Then
Me.CommandButton1.Caption = Target.Text
Set xShapeRg = ActiveSheet.Shapes.Range(xStr)
If xShapeRg Is Nothing Then Set xShapeRg = ActiveSheet.Shapes.Range("CommandButton1")
Application.EnableEvents = False
xShapeRg.Select
Application.EnableEvents = True
Selection.Name = Target.Text
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If (Not Intersect(Target, Range("A1")) Is Nothing) And Target.Text <> "" Then
xStr = Target.Text
End If
End Sub
Примечание: в коде CommandButton1 — это имя кнопки, которое вы хотите сделать динамическим, а A1 — это ячейка, значение которой будет автоматически использоваться для имени кнопки.
4. Нажмите клавиши Alt + Q, чтобы выйти из окна Microsoft Visual Basic for Applications.
5. Отключите Режим конструктора, нажав Разработчик > Режим конструктора.
Теперь имя кнопки Command будет динамически изменяться в зависимости от значения указанной ячейки на вашем листе.
Как показано на скриншоте ниже, когда значение ячейки A1 изменится, имя кнопки команды автоматически изменится на то же значение.

Раскройте магию Excel с Kutools AI
- Умное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это посредством простых команд.
- Пользовательские формулы: Создавайте индивидуальные формулы для оптимизации ваших рабочих процессов.
- Кодирование VBA: Пишите и внедряйте код VBA без особых усилий.
- Интерпретация формул: Легко разбирайтесь в сложных формулах.
- Перевод текста: Преодолейте языковые барьеры в ваших таблицах.
Связанные статьи:
- Как использовать кнопку Command для сохранения активного листа в виде PDF-файла в Excel?
- Как автоматически вставить новую пустую строку с помощью кнопки Command в Excel?
Лучшие инструменты для повышения продуктивности работы с Office
Ускорьте работу в Excel с Kutools для Excel и ощутите новую степень эффективности. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени. Нажмите здесь, чтобы выбрать нужную вам функцию...
Office Tab добавляет вкладки в Office и делает вашу работу намного проще
- Включите редактирование и чтение с вкладками в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна, а не в отдельных окнах.
- Увеличьте свою продуктивность на50% и сократите сотни лишних кликов мышью каждый день!