Excel 使用CTRL+;选择块时要模拟的VBA代码是什么;捷径?

Excel 使用CTRL+;选择块时要模拟的VBA代码是什么;捷径?,excel,range,excel-2010,vba,Excel,Range,Excel 2010,Vba,在早期版本的Excel中,在工作表中按CTRL+A可以选择所有单元格。在Excel 2010中(不确定2007或2003),我注意到如果在包含值的单元格块中按CTRL+A,它似乎知道只选择该块中的单元格。例如,如果A1:D10范围内的所有单元格都包含值,并且在活动单元格位于该范围内时按CTRL+A,则它将仅选择A1:D10。如果再次按CTRL+A,则只有在此时,它才会真正选择工作表中的所有单元格 因此,我录制了一个宏以查看执行此操作时生成的宏代码,但它实际上写入了范围(“A1:D10”)。当我按

在早期版本的Excel中,在工作表中按CTRL+A可以选择所有单元格。在Excel 2010中(不确定2007或2003),我注意到如果在包含值的单元格块中按CTRL+A,它似乎知道只选择该块中的单元格。例如,如果A1:D10范围内的所有单元格都包含值,并且在活动单元格位于该范围内时按CTRL+A,则它将仅选择A1:D10。如果再次按CTRL+A,则只有在此时,它才会真正选择工作表中的所有单元格

因此,我录制了一个宏以查看执行此操作时生成的宏代码,但它实际上写入了
范围(“A1:D10”)。当我按CTRL+a时选择
。这是限制性的,而不是动态的,因为现在我必须编写自己的逻辑来确定活动单元格周围的边界。对于像
ActiveCell.End(xlDown)
这样的方法,这并不困难,但我不想在这里重新发明轮子


是否有一些Excel VBA方法,如
ActiveCell.GetOuterRange.Select
?那太好了。

对于所有脏电池,你可以

ActiveSheet.UsedRange.Select
或者对于以连续方式围绕当前单元格的单元格,您可以

ActiveCell.CurrentRegion.Select