How to make Command Button name dynamic in Excel?
This article is talking about making the name of a Command button changed dynamically with a specified cell value changes. For example, when value in cell A1 has been changed to “test”, the name of a certain Command button will be changed to “test” automatically.
Make Command Button name dynamic with cell value by VBA code
Make Command Button name dynamic with cell value by VBA code
The following VBA code can help you make the name of a command button dynamic with a specified cell value in a worksheet. Please do as follows.
1. Click Developer > Insert > Command Button (ActiveX Control) to insert a command button into the worksheet. See screenshot:
2. After inserting the command button, right click the sheet tab and click View Code from the right-clicking menu as below screenshot shown:
3. In the opening Microsoft Visual Basic for Applications window, please copy and paste below VBA code into the window.
VBA code: Make Command Button name dynamic with cell value
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
Note: in the code, CommandButton1 is the name of the button you want to make its name dynamic, and A1 is the cell which you will reference the value to the button name automatically.
4. Press the Alt + Q keys to exit the Microsoft Visual Basic for Applications window.
5. Turn off the Design Mode by clicking Developer > Design Mode.
From now on, the name of the Command Button will be changed dynamically with the specified cell value in your worksheet.
As below screenshot shown, when the value of cell A1 has been changed, the name of the command button will be changed to the same value automatically.
Related Articles:
- How to use Command Button to save active worksheet as PDF file in Excel?
- How to insert a blank new row automatically by Command Button in Excel?
Best Office Productivity Tools
Supercharge Your Excel Skills with Kutools for Excel, and Experience Efficiency Like Never Before. Kutools for Excel Offers Over 300 Advanced Features to Boost Productivity and Save Time. Click Here to Get The Feature You Need The Most...
Office Tab Brings Tabbed interface to Office, and Make Your Work Much Easier
- Enable tabbed editing and reading in Word, Excel, PowerPoint, Publisher, Access, Visio and Project.
- Open and create multiple documents in new tabs of the same window, rather than in new windows.
- Increases your productivity by 50%, and reduces hundreds of mouse clicks for you every day!
