excel vba 谁帮我看看这条代码到底错在哪里啊

2025-06-26 12:20:32
推荐回答(3个)
回答1:

你这行代码写在哪个表里?有几个 Cells 没有指定是哪个表的,那么代码写在哪个表,就代表哪个表,如果写在模块里,就不知道是哪个表了。如果代码写在模块里,那么所有的cells都要加限定,就像Sheet8.Cells(4, 1)这样的写法

回答2:

如果按工作表顺序引用第4、第8两个工作表(确保有8个工作表):
Range(Cells(Sheets(8).Cells(4, 1), 2), Cells(Sheets(8).Cells(4, 1), 15)).Copy Sheets(4).Range(Sheets(4).Cells(3, 6), Sheets(4).Cells(3, 19))
如果按表名引用:
Range(Cells(Sheets("Sheet8").Cells(4, 1), 2), Cells(Sheets("Sheet8").Cells(4, 1), 15)).Copy Sheets("Sheet4").Range(Sheets("Sheet4").Cells(3, 6), Sheets("Sheet4").Cells(3, 19))

回答3:

很有可能是你储存的不是行号!
首先是要存在Sheet4,Sheet8这两个表。
另外请检查以下单元格内值是否为空,或者不是数字:
Sheet8.Cells(4, 1)
Sheet4.Cells(3, 6)到 Sheet4.Cells(3, 19)