在VBA中按Ctrl + Shift +向下键

我怎么可能做一个CTRL + shift +在Excel VBA下。 我也想知道,然后粘贴,作为特殊的价值。 我目前的代码是这样的

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

所以我想要做的是复制B列中的所有内容,但不是整个列本身。 就像如果条目在第100行结束,它应该停在那里几乎如何按Ctrl + Shift +结束工作。 然后复制那里的任何内容,并将其粘贴为b14中的sheet2中的值,因为这是我需要的特定位置。 我知道把.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))

现在另一种input较less的方法是使用With块:

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