2016-01-30 2 views
0

Можете ли вы мне помочь? Я хочу создать минимальное значение оси для моей диаграммы на основе ссылки на ячейку.Установить минимальное значение на оси диаграммы с помощью VBA

Вот мой код.

Private Sub Worksheet_calculate() 
    With ActiveChart.Axes(xlValue) 
     .MinimumScale = Worksheets("Chart Data").Range("E111").Value 
    End With 
End Sub 
+0

Какой у вас вопрос: не работает ли, вы получаете ошибку ...? –

+0

Привет, Алекс. Благодарю за ваш ответ. У меня ошибка «Ошибка времени выполнения» 91 ': Переменная объекта или с переменной блока не установлена ​​« У меня на самом деле есть 2 листа, 1: это данные диаграммы, которые я поместил все данные для диаграмма, 2: где находится график. –

+0

Вы не идентифицируете 'ActiveChart'. Вам нужно написать: «С листами (« Лист2 »). ActiveChart.Axes (xlValue)'. Это сработало для меня. –

ответ

1

Я хотел бы сделать это следующим образом:

Private Sub Worksheet_calculate() 
    Dim cht As Chart 

    Set cht = Worksheets("Chart").ChartObjects("Chart 1").Chart 

    cht.Axes(xlValue).MinimumScale = Worksheets("Chart Data").Range("E111").Value 
End Sub 
  • Настраивайте ссылку на ваш объект диаграммы, так что вам не нужно ActiveChart
  • Вам может понадобиться обновить ChartObjects("Chart 1") с название Ваша диаграмма
  • Вы также можете указать его, так что, если у вас есть только одна диаграмма на странице, вы: можно использовать ChartObjects(1)
+0

Здравствуйте. В ячейке «Данные диаграммы» E111 я получаю минимальную дату и передаю значение минимальным осям, используя общее значение формата. Я пытаюсь использовать ваш код с ChartObjects, и он хорош, он не выдает ошибки, но минимальная ось не обновляется. Я пытаюсь проверить его вручную, и он говорит 0.0 –

+0

Спасибо, Алекс. Я понял. Я использовал кнопку для запуска запуска vba. Большое спасибо. –

Смежные вопросы