VBA打开文件错误

我有一个名为CTAttendanceProgram的工作簿上的macros。 在我的代码中,我试图使用浏览function打开一个额外的工作簿。 我想将这个附加文件的Sheet1放在原来的“CTAttendanceProgram”中的“Employee Data”表之后。 这是我的代码到目前为止:

Dim fn fn = Application.GetOpenFilename If fn = False Then MsgBox "Nothing Chosen" Exit Sub Else Workbooks.Open (fn) Workbooks("CTAttendanceProgram.xlsm").Activate End If Application.DisplayAlerts = False Worksheets("Recent Attendance").Delete Application.DisplayAlerts = Trueppl Workbooks(fn).Sheets(1).Copy After:=Workbooks("CTAttendanceProgram.xlsm").Sheets("Employee Data") Sheets(4).Name = "Recent Attendance" 

以前,我使用这个代码来打开一个预定义的文件,它工作得很好。 但是,现在我正在使用浏览function(但仍然打开相同的文件),我遇到了“Workbooks(fn).Sheet(1).Copy …”(倒数第二)行)。 任何提示/build议? 预先感谢您的支持。

因为fn用于定义文件path和文件名称,所以不能用作工作簿。

请执行下列操作:

 Dim fn Dim wb As Workbook fn = Application.GetOpenFilename If fn = False Then MsgBox "Nothing Chosen" Exit Sub Else Workbooks.Open (fn) Set wb = ActiveWorkbook Workbooks("CTAttendanceProgram.xlsm").Activate Application.DisplayAlerts = False Worksheets("Recent Attendance").Delete Application.DisplayAlerts = True wb.Sheets(1).Copy After:=Workbooks("CTAttendanceProgram.xlsm").Sheets("Employee Data") Sheets(4).Name = "Recent Attendance" wb.Close False End If