我正在尝试将数据从现有工作簿添加到新的工作簿代码模块。我的大多数代码运行良好,但是由于某种原因,我的.deletelines事件无法正常工作。我正在尝试删除Workbook_Open事件过程中的现有行(此工作簿是具有现有过程的工作簿的副本,并且我需要其他新过程)。并且此代码不会删除这些行。但是,当我摆脱这一行时,它只是创建了一个新的Workbook_Open事件过程,然后我遇到了两个错误。到目前为止,这是我的代码。
'make data chart
Dim y As Workbook
Dim z As Workbook
Dim y1 As Worksheet
Dim z1 As Worksheet
Set y = Workbooks.Open(sPath)
Set z = Workbooks.Open("P:\HQ INVENTORY\Test Charts\Acs Pull-Chart to edit.xlsm")
Set y1 = y.Worksheets("ACS Pull-Chart to edit")
Set z1 = Workbooks("ACS Pull-Chart to edit.xlsm").Worksheets("ACS Pull-Chart to
edit")
'add code to new workbook
Dim xPro As VBIDE.VBProject
Dim xCom As VBIDE.VBComponent
Dim xMod As VBIDE.CodeModule
Dim xLine As Long
With y
Set xPro = .VBProject
Set xCom = xPro.VBComponents("ACSWorkbook")
Set xMod = xCom.CodeModule
With xMod
xLine = .DeleteLines(.CountOfLines - 3, 3)
xLine = .CreateEventProc("Open", "Workbook")
xLine = xLine + 1
.InsertLines xLine, " Dim y As Workbook"
xLine = xLine + 1
.InsertLines xLine, " Dim z As Workbook"
xLine = xLine + 1
[我意识到我需要在自己的行上使用.DeleteLines事件,因此通过设置xline = 88(行号),然后设置.DeleteLines xline下的下一行,来预先建立行号。>
With xMod
xLine = 88
.InsertLines xLine, ""
xLine = xLine + 1
.DeleteLines xLine
.InsertLines xLine, " Dim y As Workbook"
xLine = xLine + 1