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
您應該只使用一個循環:如果您不想讓它混淆主代碼,請將其抽象爲一個函數。 –