Страницы: 1
RSS
Как настроить гистограмму, чтобы "столбики" были по высоте ровно по верхней границе области построения?
 
Всех с праздниками!
Вопрос по диаграмме.
Суть вот в чем: требуется каким-то образом (если такое вообще возможно) настроить гистограмму, чтобы высота столбиков гистограммы была строго по границе области построения. При этом, подразумевается, что фиксированное значение (в файле это 25) может меняться при обновлении данных. То есть "лезть" в настройки шкалы и выставлять там фиксированное значение - не вариант.
Буду рад за подсказку или решение.
Вот рисунок - на нем видно, что область построения - зеленая, а столбики красные. Смысл - добиться, чтобы столбики стали такой высоты, чтобы были ровно по верхнюю границу зеленой области...
 
Макрорекодер рассказывает:
Код
.Axes(xlValue).MaximumScale = 25

Осталась мелочь - определить максимальное значение в данных и подставить это значение:
Код
Sub MaxScaleChart()
Dim aData()
Dim dMax As Double
Dim j As Long
    aData = Range("B3:F3").Value
 
    For j = 1 To UBound(aData, 2)
        If IsNumeric(aData(1, j)) Then
            If dMax < aData(1, j) Then dMax = aData(1, j)
        End If
    Next j
    
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.Axes(xlValue).MaximumScale = dMax
End Sub
 
или так:
Код
Sub SetMaxScaleChart()
  ActiveSheet.ChartObjects("Диаграмма 1").Chart.Axes(xlValue).MaximumScale = WorksheetFunction.Max([B3:F3])
End Sub
Изменено: Ігор Гончаренко - 06.01.2019 16:18:03
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Игорь, функция листа не проглотит ошибки #Н/Д
Да и обращение к неактивной диаграмме вызывает ошибку
 
извините.
в файл не смотрел. но если диапазон использовать под хранение данных, а не как выгребную яму для всякого...
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Цитата
Ігор Гончаренко написал: но если диапазон использовать под хранение данных, а не как выгребную яму
Общеизвестно, что иногда ошибка #Н/Д используется для корректного отображения данных на диаграмме. Для гистограммы достаточно нулевого значения, но, например, ненужный ноль вызовет нежелательный излом графика.
 
файл-таки пришлось открыть(
вплел .Chart в предыдущий код
пустые ячейки за янв и апр. - нормально отображаются на этой диаграмме)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Цитата
vikttur написал: Общеизвестно, что иногда ошибка #Н/Д...
спасибо! ни разу не пользовался, теперь буду знать
Изменено: Ігор Гончаренко - 06.01.2019 16:56:38
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Спасибо за решение!
Попробую "прикрутить".

На самом деле, конечно, подразумевалось нечто в настройках диаграммы (или какая-либо "хитрость", эмуляция и подобное), а не использование макроса, но, в любом случае, спасибо!
Если кто-то знает решение без макросов, напишите, пожалуйста! )
 
Радикальный способ: убрать сетку, ось и фон  :D
 
Цитата
Pelena написал:
Радикальный способ
да, понятно, что так можно, но тут подразумевалось как раз, что фон должен остаться ) ибо он нужен для неких целей
Страницы: 1
Наверх