01 Что делает макрос
При просмотре рабочей книги Excel нужно иметь четкое представление о всех формулах на каждом листе. Найти все формулы — трудная задача, если все делать вручную. Но Excel предоставляет нам удобный способ поиска и маркировки всех формул на листе. Макрос в этом разделе использует эту функцию, чтобы динамически отобрать и отформатировать все формулы на листе.
В Excel есть набор предопределенных «специальных ячеек», которые можно выбрать с помощью диалогового окна «Найти и выделить – Выделить группу ячеек». Чтобы вручную выбрать специальные ячейки, перейдите на вкладку «Главная» на ленте и выберите «Найти и выделить – Выделить группу ячеек». Это вызывает диалоговое окно Выделить группу ячеек. Здесь вы можете выбрать набор ячеек на основе нескольких определяющих атрибутов. Одним из определяющих атрибутов являются формулы. Опция эффективно выделяет все ячейки, которые содержат формулы.
Этот макрос программно делает то же самое для всей книги одновременно. Мы используем метод SpecialCells из коллекции Cells. Метод SpecialCells требует параметр типа, который представляет тип специальной ячейки. В этом случае мы используем xlCell- TypeFormulas.
Короче говоря, мы имеем в виду специальный диапазон, который состоит только из ячеек, содержащих формулы. Мы ссылаемся на этот специальный диапазон с помощью оператора With … End With. Это утверждение говорит Excel, что любое выполняемое вами действие относится только к тому диапазону, на который вы указали.
02 Код макроса
Sub
OtformatirovatFormuli()
'Шаг 1: Объявляем переменные
Dim
ws
As
Worksheet
'Шаг 2: Избегаем ошибки, если формулы не найдены
On
Error
Resume
Next
‘Шаг 3: Запускаем цикл через рабочие листы
For
Each
ws
In
ActiveWorkbook.Worksheets
'Шаг 4: Выбираем ячейки и выделяем их
With
ws.Cells.SpecialCells(xlCellTypeFormulas)
.Interior.ColorIndex = 36
End
With
'Шаг 5: Переходим к следующему листу
Next
ws
End
Sub
03 Как работает макрос
1. Шаг 1 объявляет объект под названием WS. Это создает контейнер памяти для каждого листа макросов.
2. Если таблица не содержит формулы, Excel выдает ошибку. Чтобы избежать ошибки, мы говорим Excel, что нужно продолжать, если будет ошибка.
3. Шаг 3 начинает цикл, говоря Excel оценить все рабочие листы в активной книге.
4. В этом шаге, макрокоманда выбирает все ячейки, содержащие формулы, а затем форматирует их.
5. На шаге 5, мы возвращаемся к шагу 3, чтобы получить следующий лист. После того, как все листы оценены, макрос заканчивает работу.
04 Как использовать
Для реализации этого макроса, вы можете скопировать и вставить его в стандартный модуль:
1. Активируйте редактор Visual Basic, нажав ALT + F11.
2. Щелкните правой кнопкой мыши имя проекта / рабочей книги в окне проекта.
3. Выберите Insert➜Module.
4. Введите или вставьте код во вновь созданном модуле.
05 Скачать файл
Автор проекта
Дмитрий Якушев
Привет! Меня зовут Дмитрий. С 2014 года Microsoft Cretified Trainer. Вместе с командой управляем этим сайтом. Наша цель - помочь вам эффективнее работать в Excel.
Изучайте наши статьи с примерами формул, сводных таблиц, условного форматирования, диаграмм и макросов. Записывайтесь на наши курсы или заказывайте обучение в корпоративном формате.
Сайт https://akademia-excel.ru/
ИП Якушев Дмитрий Александрович
ОГРНИП: 314501721200022
ИНН: 501706813807
Образовательная лицензия № Л035-01255-50/01194039
Почта: info@akademia-excel.ru
Телефон для связи: + 7 (958) 697-73-88, + 7 (495) 145-23-86
Регистрация на сайте означает согласие с пользовательским соглашением и на получение рассылки и рекламных материалов.
Политика в отношении обработки и защиты персональных данных.
Банковские реквизиты:
Расчетный счет 40802810500000003597
Банк АО «Тинькофф Банк»
Юридический адрес Банка Москва, 123060,1-й Волоколамский проезд, д. 10, стр. 1
Корр. счет Банка 30101810145250000974
ИНН Банка 7710140679
БИК Банка 044525974
Подписывайтесь на нас в соц.сетях:
Сайт https://akademia-excel.ru/
ИП Якушев Дмитрий Александрович
ОГРНИП: 314501721200022
ИНН: 501706813807
Образовательная лицензия № Л035-01255-50/01194039
Банковские реквизиты:
Расчетный счет 40802810500000003597
Банк АО «Тинькофф Банк»
Юридический адрес Банка Москва, 123060,1-й Волоколамский проезд, д. 10, стр. 1
Корр. счет Банка 30101810145250000974
ИНН Банка 7710140679
БИК Банка 044525974
Регистрация на сайте означает согласие с пользовательским соглашением и на получение рассылки и рекламных материалов.
Политика в отношении обработки и защиты персональных данных.
Почта: info@akademia-excel.ru
Телефон для связи: + 7 (958) 697-73-88, + 7 (495) 145-23-86
Написать в тех.поддержку
Подписывайтесь:
авторизуйтесь