繁体   English   中英

使用VBA将多行从一个excel文件复制到另一个

[英]Copy multiple rows from one excel file to another using VBA

我有一个很大的 excel 文件(大约 10 MB),它被写成很长的表格列表。 我想在一个单独的文件上创建一个宏,该宏在第一个文件中搜索某个值,然后返回相应的表。 到目前为止,我已经使用了搜索功能,我可以使用偏移量返回单个单元格,但是当我返回多个记录时,我收到了几个不同的错误。

我目前试图用来复制单元格的代码部分是:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM