gpt4 book ai didi

vba - 在过滤的工作表中每行打印多个单元格值

转载 作者:行者123 更新时间:2023-12-04 20:44:22 26 4
gpt4 key购买 nike

我有以下循环遍历过滤的 excel 表

Sub SpecialLoop()
Dim rng As Range

Set rng = Range("A2:A11")

For Each cl In rng.SpecialCells(xlCellTypeVisible)
Debug.Print cl
Next cl

End Sub

所以这会打印从 A2 到 A11 的所有值。我如何在循环中也打印 B 列中的相应值?

最佳答案

像这样的东西:

Sub SpecialLoop()
Dim rng As Range, cl As Range

On Error Resume Next
Set rng = Range("A2:A11").SpecialCells(xlCellTypeVisible)
On Error GoTo 0

If Not rng Is Nothing Then
For Each cl In rng
Debug.Print cl ' col A
Debug.Print cl.Offset(, 1) ' col B
'alternative way
'Debug.Print Range("B" & cl.Row) ' col B
Next cl
End If
End Sub

如果没有可见单元格 SpecialCells(xlCellTypeVisible)触发错误,这就是我使用 On Error Resume Next 的原因和 If Not rng Is Nothing Then .

至于你原来的问题,你可以使用 Debug.Print cl.Offset(, 1)从 B 列获取值(假设 cl 引用 A 列中的单元格)。或者更明确的替代方式: Debug.Print Range("B" & cl.Row)

关于vba - 在过滤的工作表中每行打印多个单元格值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22983560/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com