好奇心から-連続していない配列を連続した1D配列として作成する良い方法はありますか?
Arr(9)=(2,5 ,,,, 25,14 ,,)をArr(4)=(2,5,25,14)と言います
案内してください
ありがとう
空のアイテムを削除するためのループベースのコードは次のとおりです。
Dim Arr as Variant , vArr2 as Variant
Dim d as Object
Dim i as integer, j as integer
Set d = CreateObject("Scripting.Dictionary")
'-- populate data array
vArr(1) = "10"
vArr(2) = "55"
vArr(3) = ""
vArr(4) = "27"
vArr(5) = ""
j = 1
For i = LBound(vArr) To UBound(vArr)
If vArr(i) <> "" Then
d.Add vArr(i), j
j = j + 1
End If
Next i
'-- pass into a new array
vArr2 = d.Keys
'-- output into sheet
Sheets(1).Range("B4").Resize(1, _
UBound(Application.Transpose(d.Keys))) = d.Keys