0
有没有更好的方法来获取分隔范围值的变体而不是循环?获取分离范围内的值objet
Dim vntValues As Variant
Set rg = Range("$D$3:$D$7,$D$9:$D$21")
vntValues = rg.Value
Debug.Print UBound(vntValues)
输出是5,而我认为18是正确的。
有没有更好的方法来获取分隔范围值的变体而不是循环?获取分离范围内的值objet
Dim vntValues As Variant
Set rg = Range("$D$3:$D$7,$D$9:$D$21")
vntValues = rg.Value
Debug.Print UBound(vntValues)
输出是5,而我认为18是正确的。
喜欢的东西
Dim vntValues As Variant
Dim rng2 As Range
Set rg = Range("$D$3:$D$7,$D$9:$D$21")
For Each rng2 In rg.Areas
vntValues = rng2.Value2
Debug.Print UBound(vntValues)
Next
'rg.Value'只会内'rg'即它默认返回第一个'Area'的值,为'vntValues = rg.Areas(1).Value'。如果你说'vntValues = rg.Areas(2).Value',那么'UBound(vntValues)'是13. – YowE3K
你用'vntValues'做什么?如果你正在移动数值,过量选择数据源和稀疏选择目标工作得很好:'Range(“D3:D7,D9:D21”)。Value = Range(“E3:E21”)。value' doesn' t覆盖'D8'。 – Comintern
您应该只使用一个循环:如果您不想让它混淆主代码,请将其抽象为一个函数。 –