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

Вход

Регистрация

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

 

= Мир MS Excel/Макрос для присвоения ячейкам цвета - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Макрос для присвоения ячейкам цвета (Макросы/Sub)
Макрос для присвоения ячейкам цвета
Manner Дата: Вторник, 08.08.2017, 10:30 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Доброго дня!
Может быть кто сталкивался с таким - есть большое количество строк данных. Данные внесены в 6 столбцов. Очень нужен макрос, который, при внесении в новую строку новых данных, будет присваивать каждой ячейке строгий цвет. Самое крупное значение в новой строке - зеленый, второе значение - светло-синий, третье значение - желтый, четвертое значение - оранжевый, пятое значение - красный, шестое значение - без заливки. Пример во вложении. Условное форматирование не подходит так как присваивает цвета с очень похожими оттенками (нет контраста у ячеек с незначительно различающимися значениями), а при создании правил можно использовать только трехцветную шкалу.
К сообщению приложен файл: 4889766.xlsx(9Kb)
 
Ответить
СообщениеДоброго дня!
Может быть кто сталкивался с таким - есть большое количество строк данных. Данные внесены в 6 столбцов. Очень нужен макрос, который, при внесении в новую строку новых данных, будет присваивать каждой ячейке строгий цвет. Самое крупное значение в новой строке - зеленый, второе значение - светло-синий, третье значение - желтый, четвертое значение - оранжевый, пятое значение - красный, шестое значение - без заливки. Пример во вложении. Условное форматирование не подходит так как присваивает цвета с очень похожими оттенками (нет контраста у ячеек с незначительно различающимися значениями), а при создании правил можно использовать только трехцветную шкалу.

Автор - Manner
Дата добавления - 08.08.2017 в 10:30
InExSu Дата: Вторник, 08.08.2017, 12:22 | Сообщение № 2
Группа: Пользователи
Ранг: Участник
Сообщений: 93
Репутация: 12 ±
Замечаний: 0% ±

Excel 2007
Форматируешь как таблицу.
Сделал два правила условного форматирования, остальные допилите сами.
К сообщению приложен файл: 6950387.png(110Kb) · InExSu_Manner.xlsx(11Kb)


Сообщение отредактировал InExSu - Вторник, 08.08.2017, 12:24
 
Ответить
СообщениеФорматируешь как таблицу.
Сделал два правила условного форматирования, остальные допилите сами.

Автор - InExSu
Дата добавления - 08.08.2017 в 12:22
Udik Дата: Вторник, 08.08.2017, 12:35 | Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 1556
Репутация: 189 ±
Замечаний: 0% ±

Excel 2016 х 64
Условное форматирование не подходит так как присваивает цвета с очень похожими оттенками (нет контраста у ячеек с незначительно различающимися значениями)

Что-то странное Вы пишите. Какой назначите цвет, такой и будет. Делаете 5 правил, для каждого значения в формуле
Код

=РАНГ(B3;$B3:$G3)=1
К сообщению приложен файл: 3788833.xlsx(11Kb)


вот вам барабан
яд 41001231307558 wm R419131876897
udik1968@gmail.com
 
Ответить
Сообщение
Условное форматирование не подходит так как присваивает цвета с очень похожими оттенками (нет контраста у ячеек с незначительно различающимися значениями)

Что-то странное Вы пишите. Какой назначите цвет, такой и будет. Делаете 5 правил, для каждого значения в формуле
Код

=РАНГ(B3;$B3:$G3)=1

Автор - Udik
Дата добавления - 08.08.2017 в 12:35
sboy Дата: Вторник, 08.08.2017, 12:45 | Сообщение № 4
Группа: Проверенные
Ранг: Ветеран
Сообщений: 851
Репутация: 226 ±
Замечаний: 0% ±

Excel 2010
Добрый день.
[vba]
Код
Option Base 1
Sub Pokrasit()
'Выделить шесть ячеек для раскраски
Set rRange = Selection
If rRange.Count <> 6 Then Exit Sub
arrColors = Array(5287936, 15773696, 65535, 49407, 255, 16777215)
On Error Resume Next 'goto errH ' если в ячейке текст или пусто Resume красит в цвет предыдущей ячейке
    For Each cl In rRange.Cells
    q = WorksheetFunction.Rank(cl.Value, rRange)
    cl.Interior.Color = arrColors(q)
    Next
Exit Sub
'errH:
    'Err.Clear
    'MsgBox "Что-то пошло не так... Должно быть выделено шесть ячеек с числами"
End Sub
[/vba]
Обработку ошибок выбирайте сами
К сообщению приложен файл: 4889766.xlsm(18Kb)
 
Ответить
СообщениеДобрый день.
[vba]
Код
Option Base 1
Sub Pokrasit()
'Выделить шесть ячеек для раскраски
Set rRange = Selection
If rRange.Count <> 6 Then Exit Sub
arrColors = Array(5287936, 15773696, 65535, 49407, 255, 16777215)
On Error Resume Next 'goto errH ' если в ячейке текст или пусто Resume красит в цвет предыдущей ячейке
    For Each cl In rRange.Cells
    q = WorksheetFunction.Rank(cl.Value, rRange)
    cl.Interior.Color = arrColors(q)
    Next
Exit Sub
'errH:
    'Err.Clear
    'MsgBox "Что-то пошло не так... Должно быть выделено шесть ячеек с числами"
End Sub
[/vba]
Обработку ошибок выбирайте сами

Автор - sboy
Дата добавления - 08.08.2017 в 12:45
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Макрос для присвоения ячейкам цвета (Макросы/Sub)
Страница 1 из 11
Поиск:

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