各位大大好:
下列語法如何增設條件判斷 ar
是一維陣列或是二維陣列呢?
Sub aa()
Dim ar1, ar2, ar3
Dim mData()
Dim s%, s1%, n1%, n2%
Dim mSht1 As Worksheet
Dim mSht2 As Worksheet
Dim ar
Set mSht1 = Worksheets(1)
Set mSht2 = Worksheets(2)
With mSht1
ar1 = .Range("a1:c5") '二維陣列
ar2 = .Range("e8:g8")
ar2 = Application.Transpose(Application.Transpose(ar2)) '二維陣列轉成一維陣列
ar3 = .Range("h10:j14") '二維陣列
ReDim Preserve mData(0)
mData(0) = ar1
ReDim Preserve mData(1)
mData(1) = ar2
ReDim Preserve mData(2)
mData(2) = ar3
s = UBound(mData)
For s1 = 0 To UBound(mData)
ar = mData(s1) '如何判斷ar 是一維陣列或是二維陣列呢?
n1 = UBound(ar, 1)
n2 = UBound(ar, 2)
'if 二維陣列時 then
mSht2.Range("a65536").End(xlUp).Resize(n1, n2) = ar '當ar=mdata(1)時為二維陣列,使用此語法。
'if 一維陣列時 then
mSht2.Range("a65536").End(xlUp).Resize(, n2) = ar '當ar=mdata(1)時為一維陣列,使用此語法。
End If
Next
End With
End Sub
謝謝各位大大。 |