Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Условное форматирование VBA - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Условное форматирование VBA
Условное форматирование VBA
Pavel Дата: Суббота, 16.03.2013, 21:07 | Сообщение № 1
Группа: Гости
В листе используется условное форматирование с четырьмя условиями:

http://z-image.ru/v.php?id=6286486c03a9c47731b903a5c43f631d

Кроме того, к диапазону $A$2:$G$38 применены границы->все границы. С использованием пунктирной линии.

Диапазон динамически меняется, поэтому условное форматирование слетает, необходимо отслеживать изменение диапазона. Как это оформить в макрос?
 
Ответить
СообщениеВ листе используется условное форматирование с четырьмя условиями:

http://z-image.ru/v.php?id=6286486c03a9c47731b903a5c43f631d

Кроме того, к диапазону $A$2:$G$38 применены границы->все границы. С использованием пунктирной линии.

Диапазон динамически меняется, поэтому условное форматирование слетает, необходимо отслеживать изменение диапазона. Как это оформить в макрос?

Автор - Pavel
Дата добавления - 16.03.2013 в 21:07
AlexM Дата: Воскресенье, 17.03.2013, 10:05 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4491
Репутация: 1115 ±
Замечаний: 0% ±

Excel 2003
Поясните.
Как меняется диапазон $A$2:$G$38?
При изменении диапазона границы перерисовываются?
Слетает УФ, как? УФ перестает работать во всем диапазоне?
Вы хотите вместо УФ сделать макрос с запуском по событию изменения значений на листе?
Нужен файл образец, небольшой, как правилах написано. В нем напишите пожелания, что должно происходить на листе и при каких изменениях.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеПоясните.
Как меняется диапазон $A$2:$G$38?
При изменении диапазона границы перерисовываются?
Слетает УФ, как? УФ перестает работать во всем диапазоне?
Вы хотите вместо УФ сделать макрос с запуском по событию изменения значений на листе?
Нужен файл образец, небольшой, как правилах написано. В нем напишите пожелания, что должно происходить на листе и при каких изменениях.

Автор - AlexM
Дата добавления - 17.03.2013 в 10:05
AlexM Дата: Воскресенье, 17.03.2013, 14:24 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4491
Репутация: 1115 ±
Замечаний: 0% ±

Excel 2003
Вариант УФ макросом.
К сообщению приложен файл: UF_Pavel.xls (34.5 Kb)



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеВариант УФ макросом.

Автор - AlexM
Дата добавления - 17.03.2013 в 14:24
w00t Дата: Воскресенье, 17.03.2013, 16:48 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 131
Репутация: 3 ±
Замечаний: 0% ±

AlexM, спасибо, буду вникать...
 
Ответить
СообщениеAlexM, спасибо, буду вникать...

Автор - w00t
Дата добавления - 17.03.2013 в 16:48
w00t Дата: Понедельник, 06.05.2013, 22:49 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 131
Репутация: 3 ±
Замечаний: 0% ±

Тему создавал без входа на форум. Подскажите, пожалуйста, еще по данному макросу.
Т.к. событие на Worksheet_Change другое есть, то сделал второй Worksheet_Change2, в первом дописал Worksheet_Change2 Target (в другой рабочей книге).

Цвета переназначил, как в УФ excel 2010, а как корректно сделать форматирование столбца A данного диапазона жирным и столбцы E:G выровнять вдобавок по центру (HorizontalAlignment)?
+ первая строка имеет заголовки, выравнивание горизонтальное и вертикальное по центру и цвета другие? (фиксированное форматирование при изменении только первой строки), vba, так как обычное не желательно в связи с действиями пользователей, которые его могут заменить на неверное (и даже удалить стандартное УФ).

Другой вопрос - в эксель есть форматирование на основе значков, можно ли избежать форматирования встроенного и макросом использовать значки?
Что-то сделать могу, просто думаю криво будет и монстроообразно, расплодить Worksheet_Change если...
К сообщению приложен файл: _UF_Pavel.xls (41.0 Kb)


Сообщение отредактировал w00t - Понедельник, 06.05.2013, 22:55
 
Ответить
СообщениеТему создавал без входа на форум. Подскажите, пожалуйста, еще по данному макросу.
Т.к. событие на Worksheet_Change другое есть, то сделал второй Worksheet_Change2, в первом дописал Worksheet_Change2 Target (в другой рабочей книге).

Цвета переназначил, как в УФ excel 2010, а как корректно сделать форматирование столбца A данного диапазона жирным и столбцы E:G выровнять вдобавок по центру (HorizontalAlignment)?
+ первая строка имеет заголовки, выравнивание горизонтальное и вертикальное по центру и цвета другие? (фиксированное форматирование при изменении только первой строки), vba, так как обычное не желательно в связи с действиями пользователей, которые его могут заменить на неверное (и даже удалить стандартное УФ).

Другой вопрос - в эксель есть форматирование на основе значков, можно ли избежать форматирования встроенного и макросом использовать значки?
Что-то сделать могу, просто думаю криво будет и монстроообразно, расплодить Worksheet_Change если...

Автор - w00t
Дата добавления - 06.05.2013 в 22:49
RAN Дата: Понедельник, 06.05.2013, 22:59 | Сообщение № 6
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Не очень понял про
[vba]
Код
Worksheet_Change2
[/vba]
Такого события не существует.
А если нужно запускать по событию
[vba]
Код
Worksheet_Change
[/vba]
один макрос на разных листах, используйте
[vba]
Код
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
[/vba]
из модуля "ЭтаКнига"


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеНе очень понял про
[vba]
Код
Worksheet_Change2
[/vba]
Такого события не существует.
А если нужно запускать по событию
[vba]
Код
Worksheet_Change
[/vba]
один макрос на разных листах, используйте
[vba]
Код
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
[/vba]
из модуля "ЭтаКнига"

Автор - RAN
Дата добавления - 06.05.2013 в 22:59
w00t Дата: Понедельник, 06.05.2013, 23:03 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 131
Репутация: 3 ±
Замечаний: 0% ±

Если ламер, как я, не может объединить в один огромный сложный код на Worksheet_Change, то можно сделать так:



Забанить меня мало) разобрался..


Сообщение отредактировал w00t - Вторник, 07.05.2013, 00:17
 
Ответить
СообщениеЕсли ламер, как я, не может объединить в один огромный сложный код на Worksheet_Change, то можно сделать так:



Забанить меня мало) разобрался..

Автор - w00t
Дата добавления - 06.05.2013 в 23:03
w00t Дата: Среда, 08.05.2013, 10:28 | Сообщение № 8
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 131
Репутация: 3 ±
Замечаний: 0% ±

Сделать-то сделал, "как-то" работает, но прошу помощи, кому не трудно уделить немного времени, есть трудности с "прямизной" кода.

В книге два листа, в исходном коде события Worksheet_Change.
В обоих листах - первая строка заголовки, но на них должны применяться границы и не распространяться УФ всего что ниже, задать отдельным в коде.
В целом форматирование должно быть таким, как оно сейчас отображается. При добавлении строки ниже - условное форматирование должно на нее распространиться. В первом листе - при добавлении значения в столбце A, во втором - при добавлении значения в столбце A или выбора версии в столбце D (т.к. в крайних случаях поле может быть пустым - но нужно применить общий стиль (границы, текст, выравнивание), за исключением выделения цветом - либо каким-то иным цветом.
К сообщению приложен файл: 6942586.xls (95.0 Kb)
 
Ответить
СообщениеСделать-то сделал, "как-то" работает, но прошу помощи, кому не трудно уделить немного времени, есть трудности с "прямизной" кода.

В книге два листа, в исходном коде события Worksheet_Change.
В обоих листах - первая строка заголовки, но на них должны применяться границы и не распространяться УФ всего что ниже, задать отдельным в коде.
В целом форматирование должно быть таким, как оно сейчас отображается. При добавлении строки ниже - условное форматирование должно на нее распространиться. В первом листе - при добавлении значения в столбце A, во втором - при добавлении значения в столбце A или выбора версии в столбце D (т.к. в крайних случаях поле может быть пустым - но нужно применить общий стиль (границы, текст, выравнивание), за исключением выделения цветом - либо каким-то иным цветом.

Автор - w00t
Дата добавления - 08.05.2013 в 10:28
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Условное форматирование VBA
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!