首页 文章

XL宏可以选择具有可变起始行和结束行的范围吗?

提问于
浏览
3

我是一线技术人员 . 宏编码并不陌生,但我的大多数经验都是在WordPerfect宏中 . 我正在尝试编写一个Excel宏,它将选择并处理一系列文件中的范围 . 所需范围是一组常量列,但是是一组可变行 . 静态值标记起始行和结束行,但这些行将随每个数据文件而变化 .

我遇到的问题是,当我录制宏时,XL不记录我的光标移动(Ctrl-Up,Ctrl-Shift-Home等),它记录我正在处理的绝对单元格地址 . 由于起始行和结束行将随每个数据文件而变化,因此绝对单元格引用将不起作用 . 任何人都可以提供任何关于我如何/应该接近这个的提示吗?

詹姆斯,先谢谢你

2 回答

  • 2
    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
    
  • 2

    首先,蒂姆的答案非常简洁 - 你应该知道的另一个很酷的事情是录制一个带有相对参考的宏 - http://support.microsoft.com/kb/213740

    您的挑战是当您录制宏时,它默认为绝对参考,如果您按下相对参考按钮,您将获得您正在寻找的结果 .

    希望这也有帮助!

相关问题