VBA 从 .XLSX 复制 sheet 并将其插入 .XLA 文件
VBA copy sheet from a .XLSX and insert it into a .XLA file
我正在尝试从 .XLSX
文件中复制 Sheet 作为 .XLA
文件中的隐藏 sheet。
我只能从 .XLA -> XLSX
复制,但不能从 XLSX -> XLA
复制。
看看我的两个函数:
Sub copyFromXLAtoXLSX()
temp.Sheet1.Copy Workbooks(1).Sheets(1)
End Sub
Sub copyFromXLSXtoXLA()
' It gives me the error: Run-time error '1004': Application-defined or object-defined error
Workbooks(1).Sheets(1).Copy temp.ThisWorkbook.Sheets(1)
End Sub
非常欢迎任何帮助。谢谢!
只要 .IsAddIn=True
就无法访问 XLA sheet 的集合以添加新的 sheet。尝试将 XLA 工作簿设置为 .isAddIn = False
,制作副本,然后将其设置回 True
。
我觉得应该是(待测):
Sub copyFromXLSXtoXLA()
Workbooks(1).IsAddIn = False '<-- set it false
Workbooks(1).Sheets(1).Copy temp.ThisWorkbook.Sheets(1)
Workbooks(1).IsAddIn = True '<-- set it back to true
End Sub
我正在尝试从 .XLSX
文件中复制 Sheet 作为 .XLA
文件中的隐藏 sheet。
我只能从 .XLA -> XLSX
复制,但不能从 XLSX -> XLA
复制。
看看我的两个函数:
Sub copyFromXLAtoXLSX()
temp.Sheet1.Copy Workbooks(1).Sheets(1)
End Sub
Sub copyFromXLSXtoXLA()
' It gives me the error: Run-time error '1004': Application-defined or object-defined error
Workbooks(1).Sheets(1).Copy temp.ThisWorkbook.Sheets(1)
End Sub
非常欢迎任何帮助。谢谢!
只要 .IsAddIn=True
就无法访问 XLA sheet 的集合以添加新的 sheet。尝试将 XLA 工作簿设置为 .isAddIn = False
,制作副本,然后将其设置回 True
。
我觉得应该是(待测):
Sub copyFromXLSXtoXLA()
Workbooks(1).IsAddIn = False '<-- set it false
Workbooks(1).Sheets(1).Copy temp.ThisWorkbook.Sheets(1)
Workbooks(1).IsAddIn = True '<-- set it back to true
End Sub