Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 运行时错误1004您可以';不要把这个贴在这里_Excel_Vba - Fatal编程技术网

Excel 运行时错误1004您可以';不要把这个贴在这里

Excel 运行时错误1004您可以';不要把这个贴在这里,excel,vba,Excel,Vba,我的代码在前800次迭代中有效(它在一个包含4000个文件的文件夹中运行),现在它抛出了这个错误 运行时错误“1004”:无法将其粘贴到此处,因为副本 区域和粘贴区域的大小不同。请在区域中仅选择一个单元格 粘贴区域或大小相同的区域,然后再次尝试粘贴。“ 这是我的代码:(仅与错误相关的部分) 错误发生在这一行: .Cells.Copy Destination:=.Cells(.Rows.Count + 1, 1) 问题是excel最多只允许1048576行,而我正试图将其粘贴到下面 为了克服这些

我的代码在前800次迭代中有效(它在一个包含4000个文件的文件夹中运行),现在它抛出了这个错误

运行时错误“1004”:无法将其粘贴到此处,因为副本 区域和粘贴区域的大小不同。请在区域中仅选择一个单元格 粘贴区域或大小相同的区域,然后再次尝试粘贴。“

这是我的代码:(仅与错误相关的部分)

错误发生在这一行:

.Cells.Copy Destination:=.Cells(.Rows.Count + 1, 1)

问题是excel最多只允许1048576行,而我正试图将其粘贴到下面


为了克服这些限制并加快代码的速度,我现在使用PowerQuery导入并过滤数据。

“前800次迭代”!?也许你已经离开了工作表的底部?@SJR代码在一个包含大约4k文件的文件夹中运行。它在每个文件上运行一次该片段,然后保存并关闭。我不是说在一个文件/工作表上重复800次。您是否尝试过设置断点并单步执行以查看出错时会发生什么情况?@SJR是的。我已经通过了密码。但我不明白为什么会发生这种情况,因为它粘贴到当前数据下方的某个区域,因此它具有所需的空间,并且数据总是从相同的位置开始,以相同的列数结束。在复制之前,请尝试debug.print或
currentregion.address
上的msgbox,以检查是否需要它。
.Cells.Copy Destination:=.Cells(.Rows.Count + 1, 1)