Excel XL宏能否选择具有可变起始行和结束行的范围?
我是一名一线技术人员。对宏编码并不陌生,但我的大部分经验都是在WordPerfect宏中。我试图编写一个Excel宏,它将选择一系列文件中的一个范围并对其进行操作。所需的范围在一组恒定的列中,但在一组可变的行中。静态值标记起始行和结束行,但这些行随每个数据文件的不同而不同 我遇到的问题是,当我录制宏时,XL不会记录光标的移动(Ctrl-Up、Ctrl-Shift-Home等),它会记录我正在处理的绝对单元格地址。由于每个数据文件的起始行和结束行都不同,因此绝对单元格引用将不起作用。有人能给我一些提示,说明我可以/应该如何处理这个问题吗 提前感谢,,Excel XL宏能否选择具有可变起始行和结束行的范围?,excel,vba,variables,row,Excel,Vba,Variables,Row,我是一名一线技术人员。对宏编码并不陌生,但我的大部分经验都是在WordPerfect宏中。我试图编写一个Excel宏,它将选择一系列文件中的一个范围并对其进行操作。所需的范围在一组恒定的列中,但在一组可变的行中。静态值标记起始行和结束行,但这些行随每个数据文件的不同而不同 我遇到的问题是,当我录制宏时,XL不会记录光标的移动(Ctrl-Up、Ctrl-Shift-Home等),它会记录我正在处理的绝对单元格地址。由于每个数据文件的起始行和结束行都不同,因此绝对单元格引用将不起作用。有人能给我一些
James首先,Tim的回答非常简洁-你应该知道的另一件很酷的事情是记录一个带有相对引用的宏- 您面临的挑战是,当您录制宏时,它默认为绝对引用,如果您按下相对引用按钮,您将得到您想要的结果
希望这也有帮助 太棒了!谢谢蒂姆,你真厉害!谢谢约翰,也很有帮助!绝对需要这个信息。
Dim rng as Range
With ActiveSheet
'Ctrl+Arrow
Set rng = .Range("A10000").End(xlUp) 'CTRL+Up arrow
Set rng = .Range("A1").End(xlDown) 'CTRL+Down arrow
Set rng = .Range("Z1").End(xlToLeft) 'CTRL+Left arrow
Set rng = .Range("A1").End(xlToRight) 'CTRL+Right arrow
'Ctrl+Shift+Arrow
Set rng = .Range(.Range("A1"),.Range("A1").End(xlDown))
Set rng = .Range(.Range("A1"),.Range("A1").End(xlToRight))
End With