Excel的VBA:复制范围到一个新的工作簿
我有下面的代码是工作一个小时回来,现在不工作suddenely :-( 我在这里缺少什么Excel的VBA:复制范围到一个新的工作簿
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")
你错过了?在第二行第一次报价:
Set ReportWorkbook = Workbooks.Open("P:\Env_Check_Report\Results\" & "Report.xlsx", UpdateLinks:=True)
对不起,这是一个错误文件,出现在那里 – Jill448 2013-05-06 19:52:49
您是否试过单步执行代码以查看错误的位置? – Phylogenesis 2013-05-06 19:53:45
是的..它抛出运行时错误..对象不支持这个属性或方法。 – Jill448 2013-05-06 19:58:38
试试下面
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
你试过类似:
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)
请告诉我运行时错误?哪一行给出错误? – Santosh 2013-05-06 20:03:12
对象不支持此属性或方法是错误。它投掷在最后一行,我复制粘贴 – Jill448 2013-05-06 20:05:13
行*的哪部分*给你的错误?它是否是“ReportWorkbook.Sheet5”?或者'ReportWorkbook.Sheet5.Range(“B2:T10”)'?或'ReportWorkbook.Sheet5.Range(“B2:T10”)。Copy'?或者...你明白了。 – 2013-05-07 07:28:29