Страницы: 1
RSS
Настроить цвета гистограммы УФ в зависимости от значения
 
Добрый вечер, требуется УФ гистограммой с разными условиями  меньше 50 красный цвет, 50-85 жёлтый цвет, 85 и больше - зелёный цвет. Гистограммы разных цветов я добавил, но не могу задать и изменить условия.  
 
Доброе время суток
Цитата
Пётр Кузьмин написал:
как должен выглядеть код VBA?  
Давненько к нам эстеты не заглядывали :)  Какие у вас требования к визуализации кода?
 
Цитата
Пётр Кузьмин написал: как должен выглядеть код VBA?  
При чем здесь условное форматирование? Предожите название темы, отражающее задачу. Заменят модераторы
 
Пётр Кузьмин,
понять бы о чем вы говорите
где нужны эти гтстограммы и нужно условное форматирование или код ВБА
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Ігор Гончаренко, загрузил пример.

Цитата
vikttur написал: При чем здесь условное форматирование?
Посмотрите, пожалуйста, пример

Цитата
Андрей VG написал: Какие у вас требования к визуализации кода?
Андрей, прошу прощения, не правильно сформулировал свою мысль, приложил пример.

Имеется массивная таблица с использованием УФ данной гистограммой, которая работает по условию красный менее 80, жёлтый 80-89, зелёный 90-100. Мне требуется изменить условия на другие значения и сделать такую же гистограмму на сравнения факта и плана. Я никак не могу найти где прописываются условия для гистограммы.  
 
Пётр Кузьмин, понимаете, условное форматирование - оно всегда автоматическое. Понять по такому названию, какая задача решается, невозможно. Вы вставили в цитату полное сообщение, с требованием об изменении названия темы... И где Ваша реакция?
Цитата - не бездумная копия.
 
Цитата
Пётр Кузьмин написал:
Я никак не могу найти где прописываются условия для гистограммы.
В диспетчере условного форматирования
 
Цитата
vikttur написал:
Вы вставили в цитату полное сообщение, с требованием об изменении названия темы... И где Ваша реакция?
Как изменить названия темы? Реакция была, я попытался, но не нашёл кнопки для редактирования.
Изменено: Пётр Кузьмин - 12.07.2020 10:08:44
 
Цитата
Пётр Кузьмин написал:
но не нашёл кнопки для редактирования:D  
Вы не можете прочитать и понять фразу модератора
Цитата
Предожите название темы, отражающее задачу. Заменят модераторы
Позвольте поинтересоваться, как можно из неё прийти к выводу, что название должны менять какой-то кнопкой вы?
 
Цитата
Андрей VG написал:
В диспетчере условного форматирования
Да, я и написал эти формулы, но тут заливка идёт ячейки цветом, а меня интересует гистограмма, которая будет менять цвета в зависимости от значения, например, меньше 50% - красный, от 50% до 85% - жёлтый, от 85% - зелёный.
Изменено: Пётр Кузьмин - 12.07.2020 10:13:18
 
Цитата
Пётр Кузьмин написал:
но как изменить условия при которых, она будет менять цвета я не знаю.
Изменить числа в текущих условиях. Создать новое условие. Опишите внятно то, что вы хотите, и не пытайтесь объяснить что вы хотите, тем что вас не устраивает. Это бессмысленно.
Да и не забудьте предложить название темы.
 
Цитата
Андрей VG написал:
Изменить числа в текущих условиях.
Где их изменить? Если условия нигде не прописано, а гистограмма работает?
Цитата
Андрей VG написал:
Опишите внятно то, что вы хотите, и не пытайтесь объяснить что вы хотите, тем что вас не устраивает. Это бессмысленно.
Хорошо, прикрепил файл, описал в нём что нужно сделать.
Цитата
Андрей VG написал:
Вы не можете прочитать и понять фразу модератора
Прошу прощения, проглядел, тему предложил.
 
Цитата
vikttur написал:
Предожите название темы, отражающее задачу. Заменят модераторы
Настроить УФ гистограммы в зависимости от значения
 
Цитата
Пётр Кузьмин написал:
Настроить УФ гистограммы в зависимости от значения
Так?
 
Нет, не так. Нужно сделать вот так:  
 
Цитата
Пётр Кузьмин написал:
Нет, не так
Тогда
Цитата
Пётр Кузьмин написал:
Настроить УФ гистограммы в зависимости от значения
тоже не так, увы.
 
"Настроить цвета гистограммы УФ в зависимости от значения"  
 
Судя по всему, кроме как контроля значения макросом и корректировке цвета гистограммы в зависимости от пороговых значений, при этом УФ будет свой для каждой ячейки,   вариантов нет.
По вопросам из тем форума, личку не читаю.
 
Цитата
БМВ написал:
и корректировке цвета гистограммы
Я бы сказал, создание нового правила для чисел диапазоне, лежащих в данном интервале, создать изменить правило. Фактически задача:
Для заданного диапазона чисел построить несколько условных форматирований гистограммой, такие что, если
доля числа в размахе от минимума к максимуму в диапазоне от 100% до 90%, то цвет гистограммы - зелёный.
От 90% до 80% желтый
Ниже 80% - красный.
И формулировка вопроса темы, по моему мнению, должна звучать так: Как изменять цвет заливки условного форматирования гистограммой в зависимости от попадания числа диапазона в тот или иной диапазон относительных значений.
 
Цитата
БМВ написал:
как контроля значения макросом
Подскажите, пожалуйста, где можно найти пример данного макроса или нечто похожее?  
 
Цитата
Пётр Кузьмин написал:
где можно найти пример данного макроса
если оно существует то в интернете :-).
Под конкретную задачу надо писать. Макрушников просите  или в работе заказывайте. При этом обратите внимание, на пример. я понимаю что нужно делать, но не понимаю где.
Изменено: БМВ - 12.07.2020 12:30:11
По вопросам из тем форума, личку не читаю.
 
Цитата
БМВ написал:
если оно существует то в интернете :-).
Нашёл нечто подобное и переделал под себя, но есть трудности, как сделать, что бы макрос выполнялся автоматически, чтобы он сам менял цвета при изменение значения ячейки. Сейчас он работает, но выполняется только при запуске макроса.
Код
Sub тт()
'
' Заливка Макрос
'
            If Selection.Value <= 0.79 Then
                    MyColor = 13311
            End If
            If Selection.Value > 0.8 And Selection.Value <= 0.89 Then
                MyColor = 39423
            End If
            If Selection.Value > 0.9 And Selection.Value <= 1 Then
                MyColor = 5296274
            End If
             
            Selection.FormatConditions.AddDatabar
            Selection.FormatConditions(Selection.FormatConditions.Count).ShowValue = True
            Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
            With Selection.FormatConditions(1)
                .MinPoint.Modify newtype:=xlConditionValueNumber, newvalue:=0
                .MaxPoint.Modify newtype:=xlConditionValueNumber, newvalue:=1
                 
            End With
            With Selection.FormatConditions(1).BarColor
                .Color = MyColor
                .TintAndShade = 0
            End With
            Selection.FormatConditions(1).BarFillType = xlDataBarFillGradient
            Selection.FormatConditions(1).Direction = xlContext
            Selection.FormatConditions(1).NegativeBarFormat.ColorType = xlDataBarColor
            Selection.FormatConditions(1).BarBorder.Type = xlDataBarBorderNone
            Selection.FormatConditions(1).AxisPosition = xlDataBarAxisAutomatic
            With Selection.FormatConditions(1).AxisColor
                .Color = 0
                .TintAndShade = 0
            End With
            With Selection.FormatConditions(1).NegativeBarFormat.Color
                .Color = 255
                .TintAndShade = 0
            End With
End Sub
 
Цитата
Пётр Кузьмин написал:
он сам менял цвета при изменение значения ячейки
Составить соответствующий запрос в интернете vba событие изменение ячейки, изучить и применить. Только эти вопросы вне вашей темы.
 
Цитата
Пётр Кузьмин написал:
как сделать, что бы макрос выполнялся автоматически
Вызывайте его по событию листа Change.
 
Добрый день. Если я правильно понял задачу, то "задать" формулу для срабатывания той или иной гистограммы можно через свойство Formula в VBA.

Например, данные у нас начинаются с ячейки A2. Выделяем весь столбец и создаем три гистограммы: зеленую, желтую и красную. Затем запускаем такой макрос:
Код
Sub a()

With ActiveSheet.Range("A2")
    .FormatConditions(1).Formula = "=A2>=0,9"
    .FormatConditions(2).Formula = "=И(A2>=0,8;A2<0,9)"
    .FormatConditions(3).Formula = "=A2<0,8"
End With

End Sub
Первому правилу (зеленому) назначаем правило "больше или равно 90", второму - от 80 до 90 и т.д. Тут главное не ошибиться с порядком правил (как они идут в диспетчере УФ, так и нумеруются в VBA). Результат в приложенном файле.
Изменено: Sceptic - 12.07.2020 14:43:05 (Поделил константы на 100, раз уж речь о процентах)
 
Цитата
Юрий М написал:
Вызывайте его по событию листа Change.
не факт, все зависит от того откель берутся значения. О полноценном примере, я уже писал.

Цитата
Sceptic написал:
Если я правильно понял задачу,
неправильно.
По вопросам из тем форума, личку не читаю.
 
Цитата
БМВ написал:
неправильно.
Не могу понять, в чем несоответствие. Результат макроса - как у ТС. Из плюсов - не нужно запускать макрос постоянно, не нужно создавать отдельное УФ для каждой ячейки, запуск нужен только один раз.

Если ТС еще вернется в тему - пусть рассудит.
 
Если уже созданы гистограммы, то да - работает как нужно. Спасибо Вам большое буду дорабатывать.  
Страницы: 1
Наверх