Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Folkes,
My loop generates the buttons Ok but when I try and debug.print a position property of the button I get :- 'Run-time error 91 Object Variable or with block variable not set' I cannot see what is wrong but it must be something to do with the way I am using Set and With within the loops. Can anybody point me in the right direction. Thanks for your help...again! Here's my code:- Option Explicit Option Base 1 Sub delete() Dim TempForm, Capn(), NewCommandButton() As Variant ' UserForm Dim NewCommandButton1 As MSForms.CommandButton ' RC Variant Dim NewCommandButton2 As MSForms.CommandButton ' RV Variant Dim NewCommandButton3 As MSForms.CommandButton ' LC Variant Dim NewCommandButton4 As MSForms.CommandButton ' LV Variant Dim i As Integer, LeftPos As Integer Set TempForm = ThisWorkbook.VBProject.VBComponents.Add(3) 'Create and Postion the Variant Buttons i = 1: Capn = Array("A", "B", "C", "D") NewCommandButton = Array("NewCommandButton1", "NewCommandButton2", "NewCommandButton3", "NewCommandButton4") LeftPos = 15 For i = 1 To UBound(Capn) Set NewCommandButton(i) = TempForm.Designer.Controls.Add("forms.commandbutto n.1") With NewCommandButton(i) .Caption = Capn(i): .Top = 6: .Left = LeftPos: .Width = 25: ..Height = 17 End With LeftPos = LeftPos + 30 Next i Debug.Print NewCommandButton1.Left '********OK Until Here********** End Sub |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Donna,
You haven't changed the names of the buttons, so they are still called CommandButton1, etc. -- HTH RP (remove nothere from the email address if mailing direct) "Donna" wrote in message om... Folkes, My loop generates the buttons Ok but when I try and debug.print a position property of the button I get :- 'Run-time error 91 Object Variable or with block variable not set' I cannot see what is wrong but it must be something to do with the way I am using Set and With within the loops. Can anybody point me in the right direction. Thanks for your help...again! Here's my code:- Option Explicit Option Base 1 Sub delete() Dim TempForm, Capn(), NewCommandButton() As Variant ' UserForm Dim NewCommandButton1 As MSForms.CommandButton ' RC Variant Dim NewCommandButton2 As MSForms.CommandButton ' RV Variant Dim NewCommandButton3 As MSForms.CommandButton ' LC Variant Dim NewCommandButton4 As MSForms.CommandButton ' LV Variant Dim i As Integer, LeftPos As Integer Set TempForm = ThisWorkbook.VBProject.VBComponents.Add(3) 'Create and Postion the Variant Buttons i = 1: Capn = Array("A", "B", "C", "D") NewCommandButton = Array("NewCommandButton1", "NewCommandButton2", "NewCommandButton3", "NewCommandButton4") LeftPos = 15 For i = 1 To UBound(Capn) Set NewCommandButton(i) = TempForm.Designer.Controls.Add("forms.commandbutto n.1") With NewCommandButton(i) .Caption = Capn(i): .Top = 6: .Left = LeftPos: .Width = 25: .Height = 17 End With LeftPos = LeftPos + 30 Next i Debug.Print NewCommandButton1.Left '********OK Until Here********** End Sub |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Bob,
But should I have to rename them? If I was just generating the one commandbutton without the loop I could then use the debug.print without changing the name so why do I need to now? Donna |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Thank you....I have changed to NewCommandButton(1) and all is now
well. donna |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
locking cells based on results at runtime | Excel Worksheet Functions | |||
Excel 2003 Macro Error - Runtime error 1004 | Excel Discussion (Misc queries) | |||
Syntax Error Runtime Error '424' Object Required | Excel Programming | |||
Add pictures to UserForm at runtime | Excel Programming | |||
add multiple checkboxes to userform at runtime | Excel Programming |