1

Настройка

У меня есть два правила условного форматирования, которые применяются к диапазону ячеек. Правила таковы:

=R1C1="something" -> иметь числовой формат номер

=R1C1<>"something" -> иметь формат числа быть в процентах

Это работает: ячейка R1C1 имеет проверку данных, поэтому, когда я изменяю значение, формат чисел в диапазоне ячеек изменяется соответственно.

Эта проблема

У меня есть график, подключенный к вышеупомянутому диапазону. Вертикальная ось этой диаграммы не изменяется с числовым форматом в этих ячейках. Он остается независимо от того, какой формат чисел «жестко установлен» для этих ячеек (под «жестко установленным» я подразумеваю формат, который вы устанавливаете, используя элементы управления для формата чисел).

Как я могу сделать так, чтобы диаграмма изменила числовой формат своей вертикальной оси в соответствии с числовым форматом своего диапазона данных?

1 ответ1

0

Используя VBA и предполагая, что ваша переменная форматирования находится в ячейке A1 а ваша диаграмма называется "Диаграмма 1", вот структура кода для решения:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target = Range("A1") Then
    If [A1] = 1 Then
    ActiveSheet.ChartObjects("Chart 1").Activate
    ActiveChart.Axes(xlValue).Select
    Selection.TickLabels.NumberFormat = "00.00"

    ElseIf [A1] = 2 Then
    ActiveSheet.ChartObjects("Chart 1").Activate
    ActiveChart.Axes(xlValue).Select
    Selection.TickLabels.NumberFormat = "$0"

    Else 
    ActiveSheet.ChartObjects("Chart 1").Activate
    ActiveChart.Axes(xlValue).Select
    Selection.TickLabels.NumberFormat = "0.00%"

    End If

    Range("A1").Select

End If

End Sub

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .