VBA (функцией условного форматирования - набора значков - выставить стрелки возле значения)
Формулировка задачи:
Подскажите пожалуйста, как с помощью VBA (и применив функцию условного форматирования - набора значков) отразить рост и падение по строке без фиксированного условия, например имеем диапазон дат со значениями как отразить значки по темпу роста (но без отсутствия самого расчета темпа роста) ,т.е. к примеру по первой строке с ФИО чел.1 - 02.01.2016 должен быть значок роста возле цифры, 03.01.2016 значок роста, 04.01.2016 значок паления потому-что предыдущее значение больше, а там где значение одинаково боковая стрелка
ФИО | ПОКАЗАТЕЛЬ | 01.01.2016 | 02.01.2016 | 03.01.2016 | 04.01.2016 | 05.01.2016 | 06.01.2016 |
чел.1 | показатель1 | 10 | 11 | 12 | 10 | 15 | 15 |
чел.1 | показатель2 | 11 | 11 | 11 | 11 | 11 | 11 |
чел.1 | показатель3 | 10 | 10 | 10 | 10 | 10 | 10 |
чел.1 | показатель4 | 13 | 13 | 13 | 13 | 13 | 13 |
чел.1 | показатель5 | 14 | 14 | 14 | 14 | 14 | 14 |
чел.1 | показатель6 | 15 | 15 | 15 | 15 | 15 | 15 |
чел.1 | показатель7 | 16 | 16 | 16 | 16 | 16 | 16 |
чел.1 | показатель8 | 17 | 17 | 17 | 17 | 17 | 17 |
чел.2 | показатель1 | 1 | 5 | 3 | 7 | 9 | 10 |
чел.2 | показатель2 | 2 | 2 | 2 | 2 | 2 | 2 |
чел.2 | показатель3 | 3 | 3 | 3 | 3 | 3 | 3 |
чел.2 | показатель4 | 4 | 4 | 4 | 4 | 4 | 4 |
чел.2 | показатель5 | 5 | 5 | 5 | 5 | 5 | 5 |
чел.2 | показатель6 | 6 | 6 | 6 | 6 | 6 | 6 |
чел.3 | показатель1 | 10 | 10 | 10 | 10 | 10 | 10 |
чел.3 | показатель2 | 10 | 10 | 10 | 10 | 10 | 10 |
чел.3 | показатель3 | 10 | 10 | 10 | 10 | 10 | 10 |
чел.3 | показатель4 | 10 | 10 | 10 | 10 | 10 | 10 |
чел.3 | показатель5 | 10 | 10 | 10 | 10 | 10 | 10 |
чел.3 | показатель6 | 10 | 10 | 10 | 10 | 10 | 10 |
чел.4 | показатель1 | 20 | 20 | 20 | 20 | 20 | 20 |
чел.4 | показатель2 | 21 | |||||
чел.4 | показатель3 | 22 | 22 | 21 | 25 | 28 | 30 |
Решение задачи: «VBA (функцией условного форматирования - набора значков - выставить стрелки возле значения)»
textual
Листинг программы
Sub green(cCell As Range) cCell.FormatConditions.AddIconSetCondition cCell.FormatConditions(cCell.FormatConditions.Count).SetFirstPriority With cCell.FormatConditions(1) .ReverseOrder = False .ShowIconOnly = False .IconSet = ActiveWorkbook.IconSets(xl3TrafficLights1) End With With cCell.FormatConditions(1).IconCriteria(1) .Icon = xlIconRedDownArrow End With With cCell.FormatConditions(1).IconCriteria(2) .Type = xlConditionValueNumber .Value = cCell.Offset(0, -1) .Operator = xlGreaterEqual .Icon = xlIconYellowSideArrow End With With cCell.FormatConditions(1).IconCriteria(3) .Type = xlConditionValueNumber .Value = cCell.Offset(0, -1) .Operator = xlGreater .Icon = xlIconGreenUpArrow End With End Sub Public Sub format_arrow() Dim cCell As Range For Each cCell In Range(Cells(6, 5), Cells(28, 9)) Call green(cCell) Next End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д