我有一个VBA宏,该宏将摘要选项卡从一个工作簿复制到另一个工作簿。它可以在2010年正常运行,但不适用于从2010年升级到2016年的员工。宏不会出错-它根本什么都没有做。有人对2016年有什么不同的建议吗?谢谢!
Sub Analyst_Summary_macro()
ActiveWorkbook.Save
Dim MyPath As String, MyCompletePath As String
MyCompletePath = ActiveWorkbook.FullName
Dim wkbSource As Workbook
Dim wkbDest As Workbook
Dim shtToCopy As Worksheet
Set wkbSource = Workbooks.Open("C:\Users\n0079864\Desktop\Analyst_Summary.xlsx")
Set shtToCopy = wkbSource.Sheets("Analyst_Summary")
Set wkbDest = Workbooks.Open(MyCompletePath)
shtToCopy.Copy wkbDest.Sheets(1)
Workbooks("Analyst_Summary.xlsx").Close False
Application.ScreenUpdating = False
End Sub
答案 0 :(得分:0)
您要复制到具有代码的工作簿还是其他一些工作簿?
使用ActiveWorkbook.FullName
打开另一个工作簿似乎很奇怪,并且可能会导致问题。
尝试以下更改:
Sub Analyst_Summary_macro()
Dim wkbDest As Workbook
Set wkbDest = ActiveWorkbook 'or ThisWorkbook?
wkbDest.Save
With Workbooks.Open("C:\Users\n0079864\Desktop\Analyst_Summary.xlsx")
.Sheets("Analyst_Summary").Copy wkbDest.Sheets(1)
.Close False
End with
End Sub