gpt4 book ai didi

excel - 在 VBA 中,是否可以将范围设置为相对于另一个范围?

转载 作者:行者123 更新时间:2023-12-04 20:14:12 24 4
gpt4 key购买 nike

我正在写一个很长的脚本,并且试图找到尽可能多的捷径。在开始之前我需要设置很多范围。是否可以替换类似的东西:

Dim Range1 As Range
Dim Range2 As Range
Dim Range3 As Range
Dim i As Long

i = 2

Set Range1 = ("D" & i)
Set Range2 = ("H" & i)
Set Range3 = ("L" & i)

有一些喜欢
Dim Range1 As Range
Dim Range2 As Range
Dim Range3 As Range
Dim i As Long
Dim y As Long

i = 2
y = 4

Set Range1 = ("D" & i)
Set Range2 = (Range1.Offset(,y))
Set Range3 = (Range2.Offset(,y))

如果我要设置 100 个范围,并且彼此之间的距离相等,那将非常有帮助。如果我要使用 100 个范围,我是否需要像这里一样对每个范围进行调暗?或者我可以执行类似“将 RangeN 设置为 Range,其中 N 是 1 到 100 之间的每个整数”之类的操作吗?

提前致谢。

最佳答案

你可以用字典。

Sub ex()
Dim dict As Object
Set dict = CreateObject("Scripting.Dictionary")
Dim i As Integer, y As Integer
Dim key
y = 4
For i = 0 To 2
dict.Add i, Range("D2").Offset(, y * i)
Next
For Each key In dict
dict(key).Value = "test" & key
Next
End Sub

dict(i) 将是一个范围,你可以用它做任何你通常会做的事情。

关于excel - 在 VBA 中,是否可以将范围设置为相对于另一个范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31836206/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com