Здравствуйте! Пытаюсь построить модель визуального анализа, где в ячейках указывается различный размер квадратиков (из шрифта Wingdings) в зависимости от значения в других ячейках. Например матрица продаж по регионам и месяцам. Продажи от 0 до 100 - размер квадратика 14 кегль, от 100 до 200 - размер квадратика 20 кегль и так далее. Надеялся ввести второй критерий - доходность продаж - и уже сам квадратик в зависимости от этого закрашивать красным, жёлтым, зелёном. Это решение хотел создать путём набора правил условного форматирования, но там можно задавать только цвет и границы ячеек , но не цвет шрифта почему-то...
Подскажите пожалуйста - формулами это можно как-то решить или только надо писать код на VBA? Я просмотрел все функции по категориям на сайте MS , но так и не нашёл подходящего решения... Заранее всем спасибо за ответ!
Здравствуйте! Пытаюсь построить модель визуального анализа, где в ячейках указывается различный размер квадратиков (из шрифта Wingdings) в зависимости от значения в других ячейках. Например матрица продаж по регионам и месяцам. Продажи от 0 до 100 - размер квадратика 14 кегль, от 100 до 200 - размер квадратика 20 кегль и так далее. Надеялся ввести второй критерий - доходность продаж - и уже сам квадратик в зависимости от этого закрашивать красным, жёлтым, зелёном. Это решение хотел создать путём набора правил условного форматирования, но там можно задавать только цвет и границы ячеек , но не цвет шрифта почему-то...
Подскажите пожалуйста - формулами это можно как-то решить или только надо писать код на VBA? Я просмотрел все функции по категориям на сайте MS , но так и не нашёл подходящего решения... Заранее всем спасибо за ответ!CFO
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address(0, 0) = "A1" Then Select Case Target.Value Case Is < 100: Target.Offset(0, 1).Font.Size = 14 Case Is < 200: Target.Offset(0, 1).Font.Size = 20 Case Is < 300: Target.Offset(0, 1).Font.Size = 26 Case Is < 400: Target.Offset(0, 1).Font.Size = 32 Case Is < 500: Target.Offset(0, 1).Font.Size = 38 End Select End If End Sub
[/vba] или так [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address(0, 0) = "A1" Then Target.Offset(0, 1).Font.Size = 8 + 6 * (Target.Value \ 100 + 1) End If End Sub
[/vba]
Можно таким кодом. Вставить в модуль листа [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address(0, 0) = "A1" Then Select Case Target.Value Case Is < 100: Target.Offset(0, 1).Font.Size = 14 Case Is < 200: Target.Offset(0, 1).Font.Size = 20 Case Is < 300: Target.Offset(0, 1).Font.Size = 26 Case Is < 400: Target.Offset(0, 1).Font.Size = 32 Case Is < 500: Target.Offset(0, 1).Font.Size = 38 End Select End If End Sub
[/vba] или так [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address(0, 0) = "A1" Then Target.Offset(0, 1).Font.Size = 8 + 6 * (Target.Value \ 100 + 1) End If End Sub
_Boroda_, без макросов очень любопытно! анализирую правила УФ и не очень понимаю как реализован размер шрифта... вижу, что неким образом через пользовательский формат во вкладке "Число" , только его "разгадать" не могу. можно пару слов по этому поводу от Вас? Заранее благодарен!
_Boroda_, без макросов очень любопытно! анализирую правила УФ и не очень понимаю как реализован размер шрифта... вижу, что неким образом через пользовательский формат во вкладке "Число" , только его "разгадать" не могу. можно пару слов по этому поводу от Вас? Заранее благодарен!CFO
Вот попробовал что-то сделать. Не так, как задумывал, и не совсем так как Вы предложили, но на что-то похоже ) Я не стал пока что раскрашивать в более, чем 2 цвета, хотя градация планируется конечно же больше. Не очень там понял, почему при УФ, когда я меняю абсолютный адрес на относительный он как-то не так копируется по диапазону, но результат тем не менее показал верный )) Буду трудиться дальше .
Вот попробовал что-то сделать. Не так, как задумывал, и не совсем так как Вы предложили, но на что-то похоже ) Я не стал пока что раскрашивать в более, чем 2 цвета, хотя градация планируется конечно же больше. Не очень там понял, почему при УФ, когда я меняю абсолютный адрес на относительный он как-то не так копируется по диапазону, но результат тем не менее показал верный )) Буду трудиться дальше .CFO