Excel 下标超出范围(错误9)

Excel 下标超出范围(错误9),excel,vba,Excel,Vba,当我输入上面的代码时,我得到了结果。 但后来,当我输入代码时 SourceBook = ActiveWorkbook.Name SourceSheet = Workbooks(SourceBook).Worksheets(2).Name If Workbooks(SourceBook).Sheets(SourceSheet).Range("B10") = "SM" Then Workbooks(SourceBook).Worksheets(SourceSheet).Range("D1

当我输入上面的代码时,我得到了结果。 但后来,当我输入代码时

SourceBook = ActiveWorkbook.Name

SourceSheet = Workbooks(SourceBook).Worksheets(2).Name

If Workbooks(SourceBook).Sheets(SourceSheet).Range("B10") = "SM" Then
    Workbooks(SourceBook).Worksheets(SourceSheet).Range("D11:D3000,K11:K3000,N11:AC3000,CX11:CX3000,DD11:DD3000").Select
    Selection.Copy
它显示“下标超出范围(错误9)”。


有人能帮忙吗?

你打字有误。它应该是
SourceBook
,而不是
SourceWorkbook

这也是一种非常复杂的做事方式。试试这个

ElseIf Workbooks(SourceWorkbook).Sheets(SourceSheet).Range("B1") = "Status" Then
    MsgBox ("okay....")
子样本()
将wb设置为工作簿
将ws设置为工作表

设置wb=ActiveWorkbook'您有输入错误。它应该是
SourceBook
,而不是
SourceWorkbook

这也是一种非常复杂的做事方式。试试这个

ElseIf Workbooks(SourceWorkbook).Sheets(SourceSheet).Range("B1") = "Status" Then
    MsgBox ("okay....")
子样本()
将wb设置为工作簿
将ws设置为工作表

设置wb=ActiveWorkbook'A typo:)
SourceWorkbook
vs
SourceBook
oOPS对不起…:-)A typo:)
SourceWorkbook
vs
SourceBook
oOPS对不起…:-)