Использование SWITCH для с SPARKLINES для окрашивания основного цвета в разные цвета - PullRequest
0 голосов
/ 09 ноября 2019

Я ищу лучший способ изменить цвет или основную полосу спарклайна в зависимости от его значения. Это для листа бюджета. Мне бы хотелось, чтобы основной столбец был синим, когда он все еще находится под общим бюджетом на год, зеленым, когда он точно соответствует общему бюджету на год, и красным, когда он превышает общий бюджет на год. Я попытался использовать функцию SWITCH для этого, но она не работает. Любые идеи и помощь с благодарностью. Вот что я пытаюсь и не работает. E24 - это ячейка, в которой я хочу показать спарклайн. H - это ячейка с фактическими расходами, а F - это ячейка с запланированной суммой.

Большое спасибо за любую помощь в достижении этого.

= SWITCH(E24, ABS(H24)<F24,(SPARKLINE(H24,{"charttype","bar";"max",F24;"color1","#2E86DE"})),
ABS(H24)>F24,(SPARKLINE(H24,{"charttype","bar";"max",F24;"color1","#de4c60"})),
ABS(H24)=F24,(SPARKLINE(H24,{"charttype","bar";"max",F24;"color1","#69C569"})),
SPARKLINE(H24,{"charttype","bar";"max",F24;"color1","#000000"}))

Ответы [ 2 ]

0 голосов
/ 10 ноября 2019

Вот что сработало. :)

=IF(ABS(H17) > F17, SPARKLINE(H17,
         {"charttype","bar"; "max",F17; "color1","#DE4C60"}),  
 IF(ABS(H17) < F17, SPARKLINE(H17,
         {"charttype","bar"; "max",F17; "color1","#2E86DE"}), 
 IF(ABS(H17) = F17, SPARKLINE(H17,
         {"charttype","bar"; "max",F17; "color1","#69C569"}), )))
0 голосов
/ 09 ноября 2019

попробовать вложенный IF, пример:

=IF(B3 > B1, SPARKLINE(B2:B3,
             {"charttype", "column"; "color", "red"; "highcolor", "blue";  "ymin", 0}), 
 IF(B3 < B1, SPARKLINE(B2:B3,
             {"charttype", "column"; "color", "red"; "highcolor", "green"; "ymin", 0}), 
 IF(B3 = B1, SPARKLINE(B2:B3,
             {"charttype", "column"; "color", "red"; "highcolor", "pink";  "ymin", 0}), )))

вставить в B3 :

=IF(G3=0, SPARKLINE(E3, {"charttype", "bar"; "max", C3; "color1", "#6AA84E"}),
 IF(G3>0, SPARKLINE(E3, {"charttype", "bar"; "max", C3; "color1", "#2E86DE"}),
 IF(G3<0, SPARKLINE(E3, {"charttype", "bar"; "max", C3; "color1", "#CC0000"}), )))

0

...