|
1082 / 523 / 141
Регистрация: 27.02.2013
Сообщений: 1,508
|
|||||||||||
Условное форматирование и VBA20.03.2018, 17:47. Показов 5052. Ответов 14
Метки нет (Все метки)
Сочинил нехитрый код,который позволяет перенести цвет ячейки в условное форматирование этой же ячейки.
Если А1=1 ячейки пустые,а если не равно,то УФ срабатывает. Помогите разобраться,в чем дело? И второй вопрос.Что бы записать два и более условий в одну ячейку необходимо выбрать разные диапазоны. Конечная цель:чтобы меняя значение ячейки А1 в матрице А10:Е16 получить соответствующее изображение. Не могу сообразить как выполнить нужное смещение для копирования.
0
|
|||||||||||
| 20.03.2018, 17:47 | |
|
Ответы с готовыми решениями:
14
Условное форматирование в VBA - ошибка 1004 Условное форматирование
|
|
2786 / 718 / 106
Регистрация: 04.02.2011
Сообщений: 1,443
|
||||||
| 20.03.2018, 20:50 | ||||||
|
OLEGOFF, доброго времени суток!
Правая часть выражения ниже говорит о том, что при выполнении условия ты делаешь ту же заливку, что и без условного форматирования ячейка имеет и так. Для задания цвета заливки нужно в правой части выражения прописать нужный тебе цвет (что делается несколькими способами: через код цвета, через индекс цвета в палитре и т.п.)
И то, что я очень часто пишу - объявляй переменные и требуй этого от себя директивой Option Explicit, только если твой ник не Catstail. Особенно, когда у тебя лезут непонятные ошибки. Ну и вводить адрес диапазона в InputBox, по-моему жутко неудобно. Лучше выполнить макрос над объектом Selection, проверив что выбран объект из типа Range.
1
|
||||||
|
1082 / 523 / 141
Регистрация: 27.02.2013
Сообщений: 1,508
|
|||
| 20.03.2018, 20:59 [ТС] | |||
|
В ячейку А1 введите 1,2 или3. Добавлено через 5 минут
0
|
|||
|
2786 / 718 / 106
Регистрация: 04.02.2011
Сообщений: 1,443
|
|
| 20.03.2018, 21:12 | |
|
OLEGOFF, правильно понимаю, что тебе нужны "матричные индикаторы" в разных местах, привязанные к значению в одной ячейке каждый? Чтобы работала эта индикация только на условном форматировании? Интересная идея, надо подумать.
0
|
|
|
1082 / 523 / 141
Регистрация: 27.02.2013
Сообщений: 1,508
|
||
| 20.03.2018, 21:14 [ТС] | ||
|
0
|
||
|
2786 / 718 / 106
Регистрация: 04.02.2011
Сообщений: 1,443
|
||||||
| 20.03.2018, 21:46 | ||||||
|
OLEGOFF, попробуй в цикл добавить формат тех образцов, что приведены вверху, указав адресацию ячеек-образцов. С числами даже проще - будет смещение с масштабированием. Есть же возможность указать много условий на 1 ячейку? Для примера:
1
|
||||||
| 21.03.2018, 07:41 | |
|
Не по теме: mc-black, я тронут! :senor:
0
|
|
|
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
|
||||||
| 21.03.2018, 13:28 | ||||||
|
OLEGOFF, интересно, но так получается очень много правил УФ. Если расположить паттерны на отдельном (скрытом) листе, то можно обойтись одним правилом УФ для "знакоместа", и без VBA.
1
|
||||||
|
1082 / 523 / 141
Регистрация: 27.02.2013
Сообщений: 1,508
|
||
| 21.03.2018, 17:07 [ТС] | ||
|
Казанский, большое спасибо за пример.Интересное решение,уже даже придумал где применить.Но это потом.
Пример с матрицами придумал для наглядности.На самом деле дела обстоят "хуже". Имеется две произвольные области(в пределах разумного,например 150х100 ячеек). Располагаются на разных листах(но можно свести и на один лист). Какой-либо системы раскраски или закономерности нет.Количество цветов может быть от 3-4 до 15-20. Необходимо свести эти две области в одну. Если обработать моим макросом каждую область отдельно,то все работает нормально.Т.е. каждая область реагирует на свою цифру в ячейке А1. Стоит задача свести формулы УФ из двух областей в одну. Пробовал поступить следующим образом. 1.Записать уф одной области. 2.В эти же ячейки скопировать вторую область и опять скопировать в УФ. При таком способе должны были добавиться правила УФ2 к УФ1. Но тут столкнулся с тем,что не существует способа копирования цвета ячеек не затрагивая уже записанные правила УФ. На данном этапе думаю при помощи макроса перенести цвета ячеек из второй области в первую и повторно запустить свой макрос....? Не профи,не знаю что получится.Но вроде должно получиться. А по первому вопросу
0
|
||
|
3947 / 2340 / 790
Регистрация: 02.11.2012
Сообщений: 6,220
|
|
| 22.03.2018, 08:55 | |
|
0
|
|
|
1082 / 523 / 141
Регистрация: 27.02.2013
Сообщений: 1,508
|
|
| 22.03.2018, 09:16 [ТС] | |
|
0
|
|
|
3947 / 2340 / 790
Регистрация: 02.11.2012
Сообщений: 6,220
|
||
| 22.03.2018, 09:38 | ||
|
П.С. В суть общей задачи не вникал. как по мне одно условие наложить на второе просто так не получится.
0
|
||
|
1082 / 523 / 141
Регистрация: 27.02.2013
Сообщений: 1,508
|
||
| 22.03.2018, 09:43 [ТС] | ||
|
А они закрашиваются при $А$1<>1.
0
|
||
|
3947 / 2340 / 790
Регистрация: 02.11.2012
Сообщений: 6,220
|
|
| 22.03.2018, 09:57 | |
|
первый я видел, про него написал. а вот ваш поправленные нет.
![]() в первом файле получалось следующее вы сравнивали значение ячейки с =$A$1=1, если в А1 один то вы сравнивали значение ячейки с ИСТИНА. но т.к. у вас все ячейки пустые то соответственно 0=ИСТИНА получали ЛОЖЬ.
1
|
|
|
1082 / 523 / 141
Регистрация: 27.02.2013
Сообщений: 1,508
|
|||||||
| 22.03.2018, 10:53 [ТС] | |||||||
|
У меня получилось записано "Форматировать только ячейки которые содержат" А для правильной работы моей логики необходимо записать "Использовать формулу для определения форматируемых ячеек"
0
|
|||||||
| 22.03.2018, 10:53 | |
|
Помогаю со студенческими работами здесь
15
Условное форматирование. Условное форматирование ячеек Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
*/
#include <iostream>
#include <stack>
#include <cctype>. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|