-1

我有下面的代码,它在一小时前工作,现在突然不工作了:-(我在这里遗漏了什么吗?

 Set NewWorkbook = Workbooks.Open("P:\Env_Check_Report\Results\" & "ENV_Report_ORG.xlsx", UpdateLinks:=True)

    Set ReportWorkbook = Workbooks.Open("P:\Env_Check_Report\Results\" & "Report.xlsx", UpdateLinks:=True)

    ReportWorkbook.Sheet5.Range("B2:T10").Copy _
        Destination:=NewWorkbook.Sheet2.Range("B2:T10")
4

3 回答 3

1

试试下面

Dim xlObj As Object
Set xlObj = CreateObject("Excel.Application")

Set NewWorkbook = xlObj.Workbooks.Open("P:\Env_Check_Report\Results\" & "ENV_Report_ORG.xlsx", UpdateLinks:=True)

Set ReportWorkbook = xlObj.Workbooks.Open("P:\Env_Check_Report\Results\" & "Report.xlsx", UpdateLinks:=True)

Set NewWorksht = NewWorkbook.Sheets("Sheet5")
Set Reportsht = ReportWorkbook.Sheets("Sheet2")

If Not NewWorkbook Is Nothing And Not ReportWorkbook Is Nothing Then
   NewWorksht.Range("B2:T10").Copy
   Reportsht.Range("B2:T10").PasteSpecial
End If
于 2013-05-06T20:06:18.317 回答
0

您缺少第二行的第一个引号:

Set ReportWorkbook = Workbooks.Open("P:\Env_Check_Report\Results\" & "Report.xlsx", UpdateLinks:=True)
于 2013-05-06T19:49:56.843 回答
0

您是否尝试过类似的方法:

Set wbSrc = Workbooks.Open(Filename:=MyPath & "\" & strFilename)

wbSrc.Worksheets(5).Range("B2:T10").Copy

Set wbDes = Workbooks.Open(Filename:=MyPath2 & "\" & strFilename2)     

wbDes.Worksheets(2).Range("B2:T10").Paste

您还可以使用以下代码在代码中创建新工作簿:

Set wbDes = Workbooks.Add(xlWBATWorksheet)
于 2013-05-06T20:17:14.113 回答