Когда я выбираю диапазон из трех ячеек, скажем, B3: B5, метод действует как ожидалось и отображает три сообщения с «3», «4» и «5», ,Метод Selection.SpecialCells() возвращает неожиданный диапазон (Excel VBA)
Sub visTest()
Dim c As Range
For Each c In Selection.SpecialCells(xlCellTypeVisible)
MsgBox c.row
Next c
End Sub
Проблема заключается в том, когда я выбираю только одну ячейку: в Selection.SpecialCells(xlCellTypeVisible)
возвращает все видимые ячейки на листе, и начинается с ячейки A1.
Как заставить его возвращать только одну видимую ячейку в пределах одной выбранной ячейки? Почему возникает проблема?
Спасибо!
вы можете проверить интервал выбора, и если есть только одна ячейка, используйте 'xlCellTypeLastCell' для каждого цикла –