Использование ячеек для изменения макс / мин на существующей диаграмме - PullRequest
0 голосов
/ 10 июня 2019

Использование ячеек для изменения x / y Мин / Макс на существующей диаграмме

Я пробовал несколько сайтов, которые дают общий код, но ни один из них не работает для меня

Private Sub ChartDimension()
    With ActiveChart.Axes(xlCategory, xlPrimary)
    .MinimumScale = .Range("B72").Value
    .MaximumScale = .Range("B71").Value
    End With
    With ActiveChart.Axes(xlValue, xlPrimary)
    .MinimumScale = .Range("B70").Value
    .MaximumScale = .Range("B69").Value
    End With
End Sub

«Переменная объекта или переменная блока не установлена» Это сообщение об ошибке, которое я получаю

Ответы [ 2 ]

2 голосов
/ 10 июня 2019

Вы можете ссылаться на график, используя его имя или индекс, а именно. Если вы создаете диаграмму и в коде, вы можете встроить ее.

Private Sub ChartDimension()

With ActiveSheet
    With .ChartObjects(1).Chart.Axes(xlCategory, xlPrimary) 'or .ChartObjects("Chart 1")
    .MinimumScale = Worksheets("Sheet1").Range("c1").Value
    .MaximumScale = Range("c2").Value
    End With
    With .ChartObjects(1).Chart.Axes(xlValue, xlPrimary)
    .MinimumScale = Range("c3").Value
    .MaximumScale = Range("c4").Value
    End With
End With

End Sub
1 голос
/ 10 июня 2019

Вы должны попытаться настроить все свои Worksheet и ChartObjects, которые создадут более короткий и понятный фрагмент кода:

Модифицированный код

Option Explicit

Private Sub ChartDimension()

Dim ChtObj As ChartObject
Dim Sht As Worksheet

' set the Worksheet object
Set Sht = ThisWorkbook.Sheets("ORI -PERFO-SONIC-NOZZLES")

' set the Chart-Object
Set ChtObj = Sht.ChartObjects("Chart 1")  ' rename "Chart 1" to your chart's name
With ChtObj
    .Chart.Axes(xlValue, xlPrimary).MaximumScale = Sht.Range("B72").Value
    .Chart.Axes(xlValue, xlPrimary).MaximumScale = Sht.Range("B71").Value

    .Chart.Axes(xlValue, xlPrimary).MaximumScale = Sht.Range("B70").Value
    .Chart.Axes(xlValue, xlPrimary).MaximumScale = Sht.Range("B69").Value
End With

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...