ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   How can I programatically change the caption on a button? (https://www.excelbanter.com/excel-programming/362645-how-can-i-programatically-change-caption-button.html)

June Macleod[_2_]

How can I programatically change the caption on a button?
 
Microsoft Excel 2003


I have created a button on a spreadsheet using the following code

ActiveSheet.OLEObjects.Add(ClassType:="Forms.Comma ndButton.1",
Link:=False _
, DisplayAsIcon:=False, Left:=147, Top:=27.75, Width:=145.5,
Height:= _
33).Select
ActiveSheet.Shapes("CommandButton1").Name = "cmdButton"

but when I try and set a caption for the button using:
ActiveSheet.Shapes("CommandButton1").caption = "Hello World" it tells me
that the
"Object doesn't support this object or method"

When I try and record a macro to change the caption I end up with:
ActiveSheet.Shapes("CommandButton1").Select
Selection.Verb Verb:=xlPrimary

which frankly, I don't understand.

Can anyone help me here and tell me how to apply a caption to my button.


Many thanks


June



Ron de Bruin

How can I programatically change the caption on a button?
 
Hi June

Try this

ActiveSheet.OLEObjects("cmdButton").Object.Caption = "Hi there"

--
Regards Ron de Bruin
http://www.rondebruin.nl


"June Macleod" wrote in message ...
Microsoft Excel 2003


I have created a button on a spreadsheet using the following code

ActiveSheet.OLEObjects.Add(ClassType:="Forms.Comma ndButton.1",
Link:=False _
, DisplayAsIcon:=False, Left:=147, Top:=27.75, Width:=145.5,
Height:= _
33).Select
ActiveSheet.Shapes("CommandButton1").Name = "cmdButton"

but when I try and set a caption for the button using:
ActiveSheet.Shapes("CommandButton1").caption = "Hello World" it tells me
that the
"Object doesn't support this object or method"

When I try and record a macro to change the caption I end up with:
ActiveSheet.Shapes("CommandButton1").Select
Selection.Verb Verb:=xlPrimary

which frankly, I don't understand.

Can anyone help me here and tell me how to apply a caption to my button.


Many thanks


June





Ron de Bruin

How can I programatically change the caption on a button?
 
In one step do it like this

Dim Ws As Worksheet
Dim Btn As OLEObject

With ActiveSheet
Set Btn = .OLEObjects.Add(ClassType:="Forms.CommandButton.1" , _
Left:=.Range("C3").Left, Top:=.Range("C3").Top, _
Width:=100, Height:=30)
End With
Btn.Object.Caption = "Print workbook"
Btn.Name = "YourPrintButton"


--
Regards Ron de Bruin
http://www.rondebruin.nl


"June Macleod" wrote in message ...
Microsoft Excel 2003


I have created a button on a spreadsheet using the following code

ActiveSheet.OLEObjects.Add(ClassType:="Forms.Comma ndButton.1",
Link:=False _
, DisplayAsIcon:=False, Left:=147, Top:=27.75, Width:=145.5,
Height:= _
33).Select
ActiveSheet.Shapes("CommandButton1").Name = "cmdButton"

but when I try and set a caption for the button using:
ActiveSheet.Shapes("CommandButton1").caption = "Hello World" it tells me
that the
"Object doesn't support this object or method"

When I try and record a macro to change the caption I end up with:
ActiveSheet.Shapes("CommandButton1").Select
Selection.Verb Verb:=xlPrimary

which frankly, I don't understand.

Can anyone help me here and tell me how to apply a caption to my button.


Many thanks


June





Don Wiss

How can I programatically change the caption on a button?
 
On Sun, 28 May 2006, June Macleod wrote:

Microsoft Excel 2003

I have created a button on a spreadsheet using the following code

ActiveSheet.OLEObjects.Add(ClassType:="Forms.Comma ndButton.1", Link:=False _
, DisplayAsIcon:=False, Left:=147, Top:=27.75, Width:=145.5, Height:= _
33).Select


Why are you creating a button from the Control Toolbox? Why not from the
Forms toolbox?

ActiveSheet.Shapes("CommandButton1").Name = "cmdButton"

but when I try and set a caption for the button using:
ActiveSheet.Shapes("CommandButton1").caption = "Hello World" it tells me
that the
"Object doesn't support this object or method"


That would work fine if you created a Forms button.

Don <www.donwiss.com (e-mail link at home page bottom).


All times are GMT +1. The time now is 12:37 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com