Карти отмечает, что ему часто нужно использовать Go To Special, чтобы выбрать только видимые ячейки в выделенной области. Это заставляет его задуматься, есть ли способ выделения таких ячеек в макросе.

Существует множество способов выбора только видимых ячеек без макроса, но здесь мы не будем останавливаться на них. Предполагается, что вы хотите выбрать видимые ячейки как часть большого макроса, который вы, возможно, создаете. Например, вам может потребоваться выбрать видимые ячейки перед выполнением какого-либо форматирования или перед обработкой ячеек каким-либо другим способом.

Чтобы выбрать только видимые ячейки из диапазона выбранных ячеек, вы можете использовать следующую строку кода:

Selection.SpecialCells(xlCellTypeVisible).Select

Если вам нужно поработать с каким-то другим начальным диапазоном ячеек, прежде чем выбирать видимое подмножество этих ячеек, все, что вам нужно сделать, это изменить часть строки «Выбор». Например, вы можете выбрать видимые ячейки в используемом диапазоне рабочего листа, используя эту строку:

ActiveSheet.UsedRange.SpecialCells(xlCellTypeVisible).Select

Точно так же вы можете выбрать все видимые ячейки на всем листе, используя эту строку:

Cells.SpecialCells(xlCellTypeVisible).Select

_Примечание: _

Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.

link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (8523) применим к Microsoft Excel 97, 2000, 2002 и 2003. Вы можете найти версию этого совета для ленточного интерфейса Excel (Excel 2007 и более поздних версий) здесь:

link: / excelribbon-Selecting_Visible_Cells_in_a_Macro [Выбор видимых ячеек в макросе].