excel - VBA Excel : Copy column with start position and destination position

标签 excel vba copy range

我想将一个工作表中的列值复制到另一个已有行的工作表。

我想将工作表“源”中的 A 列中的值添加到工作表“目标”中的 X 列中。 但我想跳过源列的前 2 行,并且应将值插入到第 2000 行之后。

例如这样:

Workbook.Sheets("source").Columns("A3:A").Copy Destination:=nDestSheet.Range("X2001")

但是 VBA 告诉我类型不匹配。 我想我只是在语法方面做错了一些事情。

有人可以帮忙吗?

谢谢!

最佳答案

.Columns 接受列号或字母,而不是范围。这并不重要,因为“A3:A”无论如何都不是有效范围。

你可能想要

With Workbook.Sheets("source")
  .Range(.Range("A3"), .Columns("A").Cells(.UsedRange.Rows(.UsedRange.Rows.Count).Row)).Copy Destination:=nDestSheet.Range("X2001")
End With

关于excel - VBA Excel : Copy column with start position and destination position,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14297048/

相关文章:

VBA 提取源代码文本

Excel - 用实际单元格引用替换偏移公式

excel - 如果单元格范围不为空,则复制行

azure - 使用 COPY 通过 Azure ARM 模板创建多个 ACI 时出错

vba - 有没有办法在Excel中检索注释的单元格地址?

excel - 根据单元格值选择不同的电子邮件正文

excel - 使用 Interop.Excel 将 Excel 转换为 PDF 时不显示图像

excel - 当我计算文本的行数时,为什么结果为 1?

file - 使用 PowerShell 复制没有文件的文件夹、没有文件夹的文件或所有内容

python - 使用 psycopg2 在 python 中管道 postgres COPY