我目前有一些代码可以复制多个范围内的值,并将这些值粘贴到其他范围内。该项目的范围不断变化,因此每次添加行或列时,都需要在我的VBA代码中更改范围。我试图通过创建全局范围变量来存储范围位置来简化此过程,并让我的复制/粘贴代码引用这些变量。
Public test As Range
Public def1 As Range
Public Sub initializeGlobalVars()
'Assign values to the global variables
Set def1 = Sheets("Defaults").Range("B10:D14")
Set test = Sheets("Defaults").Range("B32:D36")
test = def1
End Sub
我知道我在这里漏掉了一些行或处理不正确,但是我希望能够通过引用变量“ test”而不是变量“ test”来更改变量“ test”中实际单元格的值单元位置,因为它不断变化。这可能吗?
谢谢您的帮助!
答案 0 :(得分:0)
由于Range
使用字符串变量,因此您可以执行以下操作:
Dim strRangeToUse as String
strRangeToUse = "B10:D14"
Set test = Sheets("Defaults").Range(strRangeToUse)
如果您随后要为测试范围设置另一个范围(strRangeToFill
),则可以执行以下操作:
Sheets("Defaults").Range(strRangeToFill).Value = test.Value
答案 1 :(得分:0)