Excel vba范围只有可见的单元格到数组

Lee*_*ght 5 excel vba range variant excel-vba

我试图从一个范围内的可见单元格中获取所有值到一个数组中.我的代码只使数组携带值直到第一个不可见的Cell然后停止.

Public Function ListeMaschinen() As Variant

Dim Auswahl As Range

With Sheets("qry_TechnischesDatenblatt")
Set Auswahl = .Range(.Range("A2:B2"), .Range("A2:B2").End(xlDown)).SpecialCells(xlCellTypeVisible)
End With

ListeMaschinen = Auswahl

End Function
Run Code Online (Sandbox Code Playgroud)

如果我选择范围,它会显示我想要标记的所有单元格.

Auswahl.Select
Run Code Online (Sandbox Code Playgroud)

我无法弄明白为什么,你能帮助我吗?

多谢!背风处

小智 5

在这里,我已将范围单元格添加到数组中。

Sub examp()
Dim rng As Range, cll As Range, i As Integer, a(100) As Variant
Set rng = Range(Range("A2:B2"), Range("A2:B2").End(xlDown)).SpecialCells(xlCellTypeVisible)
i = 0
For Each cll In rng
a(i) = cll.Value
i = i + 1
Next
End Sub
Run Code Online (Sandbox Code Playgroud)