vba

Автор Red, 24 октября 2023, 12:24

Red

Добрый день! Помогите, пожалуйста, в экселе есть таблица с датами и погодными условиями, нужно заполненные ячейки со * ( звездочкой ) раскрашивались при открытие файла! Тк как этот файл собирает данные с других файлов!

Администратор

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

Red

пока с помощью формул, но в будущем хочу сделать с помощью макрос. Наверное тогда лучше применить функцию ввода?

Администратор

Можно попробовать закрашивать с помощью условного форматирования.
С ним есть сложности: если затем пользователь будет копировать ячейки, то УФ в кашу превратится.
Если на листе ничего не делается, то наверное УФ останется в исходном виде.

Red

Пользователь только запускает файл и распечатывает. лист защищен

Red

Давайте попробуем через макрос лучше

Администратор

А почему вы не хотите УФ? Сначала надо использовать встроенные средства Экселя, если они не подходят, то тогда макрос.

Red

Так как все равно переделывать все на макрос хочу, так безопаснее от пользователе

Администратор

Цитата:
Наверное тогда лучше применить функцию ввода?

Что такое "функция ввода"?

Red

Change ? Чтобы при запуске файл собрал данные, а потом макрос проверил какие ячейки не пустые и раскрасил их?

Администратор

Событие Worksheet_Change не срабатывает, когда пересчитывается формула.
Чтобы макрос запускался, когда пересчитываются формулы, нужно использовать событие Worksheet_Calculate.

Red

Как это сделать ?

Администратор

Что сделать? Вы знаете, как закрасить с помощью макроса ячейки, в которых звёздочки?

Red


Администратор

Написал вам письмо на почту с заголовком "Письмо с Форума по VBA, Excel и Word". Написал именно на почту, а не на форум.