我有一个很大的excel文件(大约10 MB),被写成一个很长的表列表。我想在一个单独的文件上创建一个宏,该宏在第一个文件中搜索某个值,然后返回适当的表。到目前为止,我已经可以使用搜索功能,并且可以使用offset返回单个单元格,但是当我返回多个记录时,会收到几个不同的错误。
我当前试图用来复制单元格的代码部分是:
d = c + 7
For Counter = c To d
objWorkbook.Sheets("Sheetname").Range(Cells(Counter, "A"), Cells(Counter, "M")).Value = Range("M3:Y10").Value
Next
在这种情况下,它应该占用每一行并将其复制到指定的部分(c是当前正在检查的单元格,而d是每个单独表底部的行号),但我收到以下错误:
运行时错误'1004'应用程序定义或对象定义的错误
我在使用VBA时还很陌生,所以我不确定该错误是否非常简单,而且我只是没有正确看到它。
[Cells(Counter, "A")
,Cells(Counter, "M")
和Range("M3:Y10")
没有工作簿或工作表,因此默认为活动的工作簿。
d = c + 7
For Counter = c To d
with objWorkbook.Sheets("Sheetname")
'Not sure what the other workbook and sheet are called
OtherWorkbook.Sheets("SheetnameHere").Range("M3:Y10").Value = .Range(.Cells(Counter, "A"), .Cells(Counter, "M")).Value
end with
Next