Страницы: 1
RSS
Заливка ячеек на основании выпадающего списка
 
Добрый день!
Помогите решить проблему.
Задача:
  • Как сделать что бы при выборе значения из выпадающего списка ,  необходимые ячейки заливались нужным цветом?
Цель:
  • Необходимо визуально наблюдать за статусом заказных товаров в небольшом магазине.
Изменено: Porshen34 - 12.10.2014 20:32:27
 
Заливать все три ячейки?  
 
На основании значения заливка только 1 ячейки.

Заказанно: : 1 ячейка [по порядку]
Пришло: 2 ячейка
Выдано: 3 ячейка
 
А если частично?
 
Т.е. более точно  нужно что бы получалось такого вида:



P.S.: На данный момент выделение цветом делается в ручную , что занимает лишнее время , и довольно неудобно.
Изменено: Porshen34 - 12.10.2014 20:33:09
 
Повторю вопрос: если частично - какой столбец красить? У Вас 4 статуса, а столбцов всего ТРИ.
И ещё: сменился статус - в ранее закрашенной ячейке заливку убирать?
 
Не могу понять что значит частично красить?
В примере указал 3 статуса , нужно все 4 статуса сделать.
Если меняется статус, то в ранее закрашенной ячейке заливка убирается.
 
НЕ частично красить, а частично выдано.
Цитата
Porshen34 пишет: В примере указал 3 статуса , нужно все 4 статуса сделать.
Четвёртый статус КУДА?
 
Porshen34, у меня что - очень сложные вопросы, что нужно столько много времени на ответ?
 
Сделал, как понял, переделывать не буду.
ВНИМАНИЕ! У нас с Вами разная палитра цветов, поэтому цвет для заливки берётся из ячеек столбца О. Не удаляйте его.
 
Спасибо за помощь , смысл правельный, только нужно что бы сама ячейка статуса так же заливалась, как можно это поправить?

P.S: Отходил не было возможности оперативно ответить..
Изменено: Porshen34 - 12.10.2014 20:46:43
 
Добавил заливку ячеек с выпадающими списками.
 
Юрий М, помогите пожалуйста:
При вставке в основной файл, не работает.

Прописал так:
Код
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Color1 As Integer, Color2 As Integer, Color3 As Integer, Color4 As Integer
    If Not Intersect(Target, Range("A15933:A25000")) Is Nothing Then
Код
        Range(Cells(Target.Row, 11), Cells(Target.Row, 13)).Interior.ColorIndex = xlNone
        Color1 = Cells(15929, 20).Interior.ColorIndex
        Color2 = Cells(15930, 20).Interior.ColorIndex
        Color3 = Cells(15931, 20).Interior.ColorIndex
        Color4 = Cells(15932, 20).Interior.ColorIndex
        Select Case Target.Value
            Case "Заказано"
                Target.Offset(0, 10).Interior.ColorIndex = Color1
                Target.Interior.ColorIndex = Color1
            Case "Пришло"
                Target.Offset(0, 11).Interior.ColorIndex = Color2
                Target.Interior.ColorIndex = Color2
            Case "Выдано"
                Target.Offset(0, 12).Interior.ColorIndex = Color3
                Target.Interior.ColorIndex = Color3
            Case "Частично пришло"
                Target.Offset(0, 11).Interior.ColorIndex = Color4
                Target.Interior.ColorIndex = Color4
        End Select
    End If
'Заказано - 3
'Пришло - 44
'Выдано - 14
'Частично - 48
End Sub
 
Но почему то не работает.
Изменено: Porshen34 - 12.10.2014 22:01:58
 
В какой модуль вставили? Нужно в модуль листа. И код оформляйте не цитатой, а тегом кода:
 
Цитата
Юрий М пишет:  Нужно в модуль листа.
Вставил в модуль листа все заработало, кроме статуса "Частично пришло"
 
С мои зрением трудно рассмотреть Ваш скрин, но вроде в исходном диапазоне для выпадающего списка нет значения "Частично пришло".
 
Приветствую. Подскажите, пожалуйста, по такой задаче.
БЫЛО:
Список контрагентов (вертик) и календарь выплат им (гориз). Образовывалось как бы поле как в морском бою.
Каждая ячейка при заполнении суммы выплаты (>0) закрашивалась зеленым - Все ок.
СТАЛО:
Около каждого контрагента появился выпадающ список с банком обслуж. и теперь при выплате - ячейка должна закрашиваться не просто зеленым, а цветом - котор соответствует банку (наприм: тинькоф-желт, сбер-зелен, втб-син, альфа- красн и так до 10 вариантов)
Т.е. изначально (пока не записали выплату) ячейка без окраски. Далее - если выбираем человеку Сбер - все выплаты будут окрашиваться в зеленый (в теч месяца его строка выпат будет зеленой), а если на Альфу .(выплаты будут красными).
Подскажите как это можно реализовать в моем случае при помощи макроса?
Заранее спасибо за ответ.
Изменено: v1dmr - 06.01.2020 01:59:13
 
а условное форматирование не подойдет?
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Цитата
Ігор Гончаренко написал:
а условное форматирование не подойдет?
Уже нет - изначально так и было - через УФ указывали критерии и цвета заливки и просто меняли все это руками в нач. кажд. месяца, но сейчас слишком много людей и хотелось бы, что бы все это работало автоматич. Выбираешь из списка банк контрагента и все его отправления в теч месяца будут подсвечиваться нужным цветом.
 
Цитата
vladimir01 написал:
Уже нет
Тогда, и лучше в отдельную тему и это Ваше  БЫЛО и СТАЛО в качестве примера. Лично мое мнение, основанное на минимуме информации, УФ подойдет, только его нужно правильно организовать.
Изменено: БМВ - 06.01.2020 10:17:17
По вопросам из тем форума, личку не читаю.
Страницы: 1
Наверх