创建新图纸时的vba创建命令按钮
当前我正在尝试在创建新工作表时创建命令按钮。然而,我面临着一个错误。错误438,对象不支持此属性或方法。这里需要一些帮助。干杯创建新图纸时的vba创建命令按钮,vba,excel,Vba,Excel,当前我正在尝试在创建新工作表时创建命令按钮。然而,我面临着一个错误。错误438,对象不支持此属性或方法。这里需要一些帮助。干杯 Sub wdlsinflow() Dim r As Range, LstRw As Long, LstCo As Long Dim Obj As Object Dim Code As String LstRw = Sheets("sheet2").Cells.Find(What:="*", SearchOrder:=xlRows, S
Sub wdlsinflow()
Dim r As Range, LstRw As Long, LstCo As Long
Dim Obj As Object
Dim Code As String
LstRw = Sheets("sheet2").Cells.Find(What:="*", SearchOrder:=xlRows, SearchDirection:=xlPrevious, LookIn:=xlValues).Row
LstCo = Sheets("sheet2").Cells.Find(What:="*", SearchOrder:=xlColumns, SearchDirection:=xlPrevious, LookIn:=xlValues).Column
Const myCompany As String = "RECEIVABLES - INFLOWS"
Set r = Sheets("sheet2").Columns(1).Find(myCompany, , , 1)
If Not r Is Nothing Then
If Not IsSheetExists(myCompany) Then
Sheets.Add(After:=Sheets(Sheets.Count)).Name = myCompany
End If
With Sheets(myCompany)
.Cells.Clear
Range(r, Sheets("sheet2").Cells(LstRw, LstCo)).Copy .Cells(1)
Set Obj = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", _
Link:=False, DisplayAsIcon:=False, Left:=200, Top:=100, Width:=100, Height:=35)
Obj.Name = "TestButton"
'buttonn text
ActiveSheet.OLEObjects(1).Object.Caption = "Test Button"
Code = "Sub ButtonTest_Click()" & vbCrLf
Code = Code & "Call Tester" & vbCrLf
Code = Code & "End Sub"
End With
End If
With Sheets(myCompany).VBProject.VBComponents(Sheets(myCompany).Name).CodeModule
.insertlines .CountOfLines + 1, Code
End With
End Sub
这对我很有用:
Sub wdlsinflow()
Dim sht As Worksheet
Dim Obj As Object
Dim Code As String
Dim cmod
Set sht = Sheets.Add(After:=Sheets(Sheets.Count))
With sht
.Name = "blah"
.Cells.Clear
Set Obj = .OLEObjects.Add(ClassType:="Forms.CommandButton.1", _
Link:=False, DisplayAsIcon:=False, Left:=200, _
Top:=100, Width:=100, Height:=35)
Obj.Name = "ButtonTest" '<< name must match code below...
Obj.Object.Caption = "Test Button"
Code = "Sub ButtonTest_Click()" & vbCrLf & _
" Call Tester" & vbCrLf & _
"End Sub"
With .Parent.VBProject.VBComponents(.CodeName).CodeModule
.insertlines .CountOfLines + 1, Code
End With
End With
End Sub
这一错误发生在哪一行?在这一行“code”设置Obj=ActiveSheet.OLEObjects.AddClassType:=Forms.CommandButton.1,ulink:=False,DisplayAsIcon:=False,Left:=200,Top:=100,Width:=100,Height:=35Hi1感谢您的响应。我还是会出错。有一个弹出窗口,指示此时无法进入中断模式,然后出现相同的错误弹出窗口无法说明问题可能是什么-我的版本与您的版本相比简化了,但对我来说效果很好。Hafiz,您是使用F8步进还是F5运行?当我使用F8时,我得到了同样的错误。嗨!我正在使用steppingF8