如何通过 VBA 仅循环遍历 Excel 工作表中一列中的非空单元格?

Aqq*_*qqq 1 excel vba

根据这个网站

我认为这应该有效:

Dim cell As Range
For Each cell In xxxSheet.Range("B:B").SpecialCells(xlCellTypeFormulas, xlNumbers)
    'Do sth.
Next
Run Code Online (Sandbox Code Playgroud)

这不起作用。有什么遗漏吗?

Mic*_*zyn 7

这应该是有效的解决方案:

For Each cell In xxxSheet.Range("B:B")
    If Not IsEmpty(cell) Then
        'do sth
    End If
Next
Run Code Online (Sandbox Code Playgroud)

此外,如果您想循环到最后一个填充的单元格,您可以使用以下内容:

xxxSheet.Range("B1:B" & Cells(Rows.Count, 2).End(xlUp).Row)
Run Code Online (Sandbox Code Playgroud)

代替

xxxSheet.Range("B:B")
Run Code Online (Sandbox Code Playgroud)