当前位置: 首页 > 知识库问答 >
问题:

从多张工作表复制范围,而不是只复制一张工作表

曹钊
2023-03-14

我有一个工作簿,有7张工作表,但只有6张数据。所有这7张表都有相同的结构/标题,只是最后一张表(表7)是空白的。

我想编写一个代码,将A2:J15范围内的表1-6的内容复制到表7工作表中。我目前有一个代码,我一直在使用,以测试,看看它是否工作,但代码我只有副本和粘贴从一个工作表仅(见下文)。有什么建议吗?

在下面的工作表中,我有两个工作表,我希望数据来自其中,另一个是目标工作表,我希望数据去那里:

Sub sbCopyRangeToAnotherSheet()
Sheets("Source1").Range("A1:B10").Copy
Sheets("Source2").Range("A1:B10").Copy
Sheets("Destination").Activate
Range("A1:B10").Select
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub

共有1个答案

雍宇定
2023-03-14

您的问题来自于您试图将两个项目直接复制在彼此之后。第二个复制调用将覆盖您在第一个调用中复制的数据。

Sheets("Source1").Range("A1:B10").Copy
Sheets("Destination").Activate
Range("A1:B10").Select
ActiveSheet.Paste

Sheets("Source2").Range("<your new range here>").Copy
Sheets("Destination").Activate
Range("<your new range here>").Select
ActiveSheet.Paste
Application.CutCopyMode = False

上面的代码应该解释我的意思,尽管不是最有效的方法。更有效的方法是使用:

Sheets("Source1").Range("A1:B10").Copy Destination:=Sheets("Destination").Range("A1:B10")

Sheets("Source2").Range("A1:B10").Copy Destination:=Sheets("Destination").Range("<range>")
 类似资料:
  • 试图将一个范围从Sheet1复制到31张表上的相同范围,但仍然得到“运行时错误1004:工作表类的粘贴方法失败”,调试器指示是问题所在。我可以复制到一张单张没有问题,但不能复制到多张。我试着到处找,但不知道问题是什么(可能也很简单)。

  • 我正试图将所有工作表(7张)从workbook1(wb1)复制到WB2。wb1包含命令按钮,但我不希望它们出现在我的新工作簿中。我正在使用循环将单个工作表从一个工作簿复制到另一个工作簿。但是复制到第二张时出错了。我使用的代码如下:- 循环第一次成功运行,但对于i=2,代码给出错误

  • 我需要将Excel表内容显示到同一Excel文件中的另一个表。这里我有两个表和。我试图通过使用或来设置的单元格值。(我尝试了这两个公式。) 我得到了公式或而不是单元格中的结果。 “计算”选项是自动的,单元格不是文本,它显示为“常规”。 打开时,Excel显示: 双击单元格,结果显示:

  • 我在一列中有两个具有唯一ID的工作表。我需要确保每当在一张图纸(Sheet1)中添加新ID时,它都会复制到另一张图纸(Sheet2)中的最后一个空行。IMPORTRANGE将不会作为动态工作。在其他工作表中添加的任何静态信息都与相应的ID无关。 在另一个线程[1]中,我得到了开发这个脚本的帮助,它将完全做到这一点。但是,这个脚本将在列A中的另一个工作表中插入数据。我如何修改脚本,以便我可以决定我希

  • 我有以下脚本: 这是我找到脚本的原始帖子:https://support.google.com/docs/forum/AAAABuH1jm0hR40qh02UWE/?hl=en 我想对代码做一些小的调整,但不知道从哪里开始。 目前,当在G列中输入“Y”时,它复制整行,并将行内容放在ORDERS!的最后一行!。 我想让它做的是: 1) 仅复制订单最后一行上的B、C和E列!2) 在中删除E和F中的值!