Помогите создать три правильных правил для УФ, которые бы красили:
1. Если текст содержит одно из нескольких перечисленных значений - то красить одним цветом 2. Если текст содержит одно из нескольких перечисленных значений - то красить другим цветом 3. А вот если в ячейке встречаются значения из правила1 и правила2 - то тогда градиентная заливка.
В примере подробно описал варианты. Ещё такой момент - список значений должен быть в формулах УФ, а не браться из ячеек или диапазонов имён...
Просьба/вопрос - можно ли исправить правила УФ в прикреплённом файле так, чтобы закрашивались не только ячейки с датами, но и соседние, которые ранее были объединены в одну? Знаю, что объединение ячеек - ЗЛО, но просто расширить длину столбцов под одну ячейку с датой нельзя.. В уф применяется градиентная заливка на объединённые ячейки, но можно обойтись и обычной, если что. В примере всё расписал и показал, на всякий случай.
На VBA написать заливку не проблема, дело в другом - нужно именно постоянное динамическое изменение цвета ячеек с правилами УФ без каких-либо запусков процедур.
Из-за объединения ячеек файл вырос столь сильно, что стал открываться ооочень долго, и сохраняться тоже. К тому же объём стал огромный, но это не столько критично и напрягающе, как время ожидания при открытии/сохранении файла. Таких ячеек с датами и временем десятки тысяч на сотнях листов.
Потихоньку осваиваю VBA, и решил написать, вроде как сначала показалось, незатейливый макрос, копирующий данные из одной таблицы в другую согласно определённым условиям, но столкнулся с нехваткой знаний VBA и общего понимания конструкции, как именно это реализовать.
...а поначалу вообще хотел через массивы всё сделать, так как хотелось высокой скорости работы макроса, но с удивлением для себя обнаружил, что в VBA в массивах отсутствует поиск, подобный Find(). Да и как выяснилось, он бы тоже не особо помог. Нашёл некоторые готовые решения по поиску в массивах, но куда мне уж там, коли не смог даже в обычных циклах сделать.
В общем, в файле-примере достаточно наглядно всё описал. Файл-пример обладает небольшим набором данных, в оригинале их гораздо больше, поэтому и были мысли делать через массивы. В файле уже начат макрос с обычными циклами, и закомментированы строки, дальше которых уже не смог придумать, как сделать так, чтобы всё работало.
Столкнулся с проблемой, которую макросом решил бы за 5 секунд, но потребовалось именно условное форматирование. Почитал, почитал.. и понял, что в формулах УФ не могу ничего понять. Главное - можно ли это реализовать через формулы УФ.
Так вот, задача, казалось бы простая - подсвечивать даты. Сегодня, завтра, текущая неделя, следующая неделя - мда.. выбор в УФ по датам скуден для более широкого применения. Но это полбеды. У Экселя там неделя начинается с воскресенья, вот это было откровением.. ну оно как бы и понятно - не наши люди разрабатывали.
Остаются формулы в УФ. Но тут я ни бум-бум. Поможете, люди сведующие?
Хотелось бы, что б подсвечивалось так, в порядке приоритета:
1. Сегодня. От текущего времени, но минус 2 часа и до +6 часов к следующим суткам 2. Завтра. От текущего дня +1 день и +6 часов к послезавтра 3. Послезавтра. От текущего дня +2 дня и +6 часов к послепослезавтра 4. Послепослезавтра. От текущего дня +3 дня 5. Текущая неделя от текущего дня (включая воскресенье), но не включая прошедшие дни недели 6. Следующая неделя от текущего дня (с понедельника)
Здравствуйте. Столкнулся с тем, что ручная копирование-вставка из других файлов занимает много времени, и подумал, а нельзя ли это автоматизировать с помощью макроса? Сам в макросах не силён, поэтому спрошу - реально ли это вообще? Хотелось бы: макрос, подставляющий значения из других книг в соответствии с найденными значениями. Файлы, из которых берутся данные имеют имена 2018-01, 2018-02, 2018-03 и тд (всего 12 файлов, по месяцам). В этих файлах содержатся листы, пронумерованные по дням (1-31).
Задача макроса определить следующее:
0. Если в строке столбца B пусто, то тогда ничего не делать с этой строкой. 1. Если в столбце С (начиная с С1 и по С20) присутствует слово "НЕТ", то тогда ничего не делать с этой строкой. 2. В ином случае в столбце B определить первые две цифры как день месяца, после точки следующие две цифры - как месяц (вот это наверное сложно, так как всё текстовое) 3. Просмотреть в соответствующем файле месяца и соответствующем листе номеру дня на предмет совпадения данных из строки столбцов D и E, и если эти два значения (например, "Значение 1" и "Значение 2" из D1 и E1) находятся на одной из строк листа с соответствующей датой, то подставить (скопировать) в эту строку все значения с полями "ДАННЫЕ" в соответствующие ячейки (в ячейки в столбцах C, F, H, I и J)
Вот как-то так. Что скажите, реально ли это сделать? Цену пишите.