将数据复制到另一个工作簿时,VBA Excel不响应

我使用这个简单的代码将工作簿1中的工作表复制到同一个文件夹中的工作簿2中。

Sub Button27_Click() Application.ScreenUpdating = False Dim FileName As String Workbooks.Open FileName:=ActiveWorkbook.Path & "\sefaresh.xlsm" Application.Wait (Now + TimeValue("0:00:01")) ThisWorkbook.Sheets("Sheet3").Copy After:=Workbooks("sefaresh.xlsm").Sheets(Sheets.Count) Application.ScreenUpdating = True End Sub 

复制和粘贴function处理成功,但如果我先closures工作簿2,我得不到Excel的响应。 任何build议?

谢谢

试试这个( 未经testing )。 你现在不应该得到一个错误。

事情变得更容易,如果你使用对象:)

 Sub Button27_Click() Dim wbThis As Workbook, wbThat As Workbook Dim ws As Worksheet Dim fName As String On Error GoTo Whoa Set wbThis = ThisWorkbook Set ws = wbThis.Sheets("Sheet3") fName = wbThis.Path & "\sefaresh.xlsm" Application.ScreenUpdating = False Set wbThat = Workbooks.Open(fName) DoEvents ws.Copy After:=wbThat.Sheets(wbThat.Sheets.Count) '~~> close and save the workbook wbThat.Close (True) DoEvents '<~~ Give time for it to save and close LetsContinue: Application.ScreenUpdating = True MsgBox "Done" Exit Sub Whoa: MsgBox Err.Description Resume LetsContinue End Sub