如何在 VBA 中实现 ctrl + shift + down



如何在 excel vba 中执行 ctrl + shift + down?我还想知道然后将其粘贴为特殊值。这是我目前拥有的代码:

Sub CopyCol()
    Sheets("Sheet1").Range("B2").End(xlDown).Select.Copy
    Sheets("Sheet2").Range("B14").PasteSpecial xlPasteValues
End Sub

我正在尝试复制 B 列中的所有内容,而不是整个列本身。例如,如果条目以第 100 行结尾,则应选择单元格 B2 到 B100,其方式与 ctrl+shift+down 的工作方式相同。

选择单元格后,我想复制它们并将它们作为值粘贴到Sheet2单元格B14处。我知道把.Select放在(xlDown)后面会帮助我做到这一点,但是我无法复制单元格。此外,粘贴到另一个工作表中也不起作用。

您将使用的方法是:

Sheets("Sheet1").Range(Sheets("Sheet1").Range("B2"),Sheets("Sheet1").Range("B2").End(xlDown)).Copy

Range() 对象的工作方式如下Range(Start Cell, End Cell)

因此,您用Sheets("Sheet1").Range("B2")锚定第一个单元格。

并用Sheets("Sheet1").Range("B2").End(xlDown))锚定结束单元格.

现在,另一种键入较少的方法是使用 With 块:

With Sheets("Sheet1")
    .Range(.Range("B2"),.Range("B2").End(xlDown)).Copy
End with

最新更新