问题描述
我在 VBA 中处理范围时总是遇到问题。有人可以解释如何实现以下目标:
我有一个名为 Source_Index 的范围变量,它保存对单个单元格的引用。
我想使用 Source_Index 作为锚点来选择一系列单元格。在此示例中,我想选择 Source_Index 和 Source_Index 左侧的相邻六个单元格。
伪代码如下所示:
ActiveSheet.Range("Source_Index:Source_Index.Offset(0,-6)")
感谢任何帮助。
解决方法
您可以自己测试偏移量:
MsgBox ActiveSheet.Range("Source_Index").Offset(0,-1).Value
MsgBox ActiveSheet.Range("Source_Index").Offset(0,-2).Value
'...and so on
此外,这是基本选择:
ActiveSheet.Range("H1","B1").Select
这是你想要的:
ActiveSheet.Range("Source_Index",Range("Source_Index").Offset(0,-6)).Select
所以你可以想象"H1" = "Source_Index"
和"B1" =Range("Source_Index").Offset(0,-6)