Cambie el nombre del botón de comando ActiveX usando VBA en Excel
Estoy tratando de cambiar la propiedad del nombre de los botones de comando ActiveX con VBA con el siguiente código:
Set shp = ActiveSheet.Shapes(Selection.Name)
With shp.OLEFormat.Object
.Object.Caption = "Node" & Str(NumNodes)
.Name = "Node" & Str(NumNodes)
End With
Puedo cambiar el nombre de la leyenda, pero la propiedad del nombre no se puede cambiar con el código anterior. Necesito encontrar una manera de concatenar una cadena con un int (NumNodes) para la propiedad de nombre.
ACTUALIZAR
Esta es la subrutina completa que copia un botón de comando y lo pega en una ubicación de celda específica. Las propiedades, como el nombre y el título también se modifican al crear el botón.
Public Sub Node_Button_Duplication()
'
'Comments: Copies and pastes Node 1's button to the appropriate column
Dim shp As Shape
' Copy Node 1 button and paste in appropriate location
ActiveSheet.Shapes("CommandButton1").Select
Selection.Copy
Cells(5, 10 + 7 * (NumNodes - 1) - 1).Select
ActiveSheet.Paste
Selection.ShapeRange.IncrementLeft 47.25
Selection.ShapeRange.IncrementTop -13.5
Set shp = ActiveSheet.Shapes(Selection.Name)
With shp.OLEFormat.Object
.Object.Caption = "Node" & Str(NumNodes)
.Name = "Node" & Str(NumNodes)
End With
End Sub