我有一个宏,可以创建带有一些按钮的工作簿,并将Excel工作表中的信息拉入其中。
宏在创建它的计算机上运行时有效。如果我将新创建的文件发送到另一台计算机,它会要求我更新数据源,如果我选择不更新按钮则不起作用。如果我选择更新它,则表示无法提交personal.xlsb文件。
为什么宏不工作?我想我的主要问题是,如果我创建一个带有下拉菜单和按钮的新工作表,有没有办法将它保存到新文件中,并使用它们将使用的功能?
以下是我的一些代码:
'Create New Workbook
Function AddNew() As Workbook
Set AddNew = Workbooks.Add()
Wname = ActiveWorkbook.name
Wname = Left(Wname, Len(Wname) - 5)
With AddNew
.SaveAs Filename:=Wname & ".xlsx"
End With
nwrkbksaved = True
End Function
'Run the create new Workbook function and pull information to new sheet
Public Sub TemplateCreate()
Set thisWB = ActiveWorkbook
'Set up template for new workbook
Set NewBook.Workbook = AddNew
'Check to see if New Workbook exists
If nwrkbksaved = False Then GoTo term
'Pull information code
Set btn = NewBook.Workbook.Sheets("sheet1").Buttons.Add(Range("F15").Left, Range("F15").Top, 165, 15)
With btn
.OnAction = "getData"
.Caption = "Submit"
.name = "submitData"
End With
End Sub
Function getData()
'Get data code
End Function
答案 0 :(得分:1)
您好,我能够找出这些信息。经过更多的研究后,我得到了答案,希望如果遇到这个问题会有所帮助:
我使用以下链接获取帮助http://www.cpearson.com/Excel/VBE.aspx
Dim ToVBProject As VBIDE.VBProject
Dim FromVBProject As VBIDE.VBProject
Dim Fname As String
Fname = "Path of bas + bas name.bas"
FromVBProject.VBComponents("module").Export Fname
ToVBProject.VBComponents.Import (Fname)
再次感谢您的帮助!