2015-07-03 80 views
1

我有一個數組聲明如下:非連續範圍成單維陣列

MyArr = Sheets("xls").Range("A1:A" & last_row).Value2 

我想另一個範圍.Range(「D1:d」 & last_row)來添加.Value2到它,如何將我做到了嗎?

或...任何簡單的方法來創建一個數組從非連續的範圍?我需要不空格的單維數組從後續的結果範圍

Range("A1:A100") and Range("AL1:AM:120) 

回答

0

方式一:

Sub dural() 
    Dim ary() As Variant, i As Long 
    Dim r As Range 
    i = 1 
    For Each r In Union(Range("A1:A100"), Range("AL1:AM120")) 
     If r.Value <> "" Then 
      ReDim Preserve ary(1 To i) 
      ary(i) = r.Value 
      i = i + 1 
     End If 
    Next r 
    MsgBox i 
End Sub 
+0

它的工作原理,謝謝 – Gotrekk