Як створити гістограму у vba (з прикладом)
Щоб створити гістограму в Excel за допомогою VBA, можна використати такий базовий синтаксис:
SubCreateBarChart ()
Dim MyChart As ChartObject
' get input range from user
Set Rng = Application.InputBox(Prompt:=" Select chart input range ", Type:=8)
'create bar chart
Set MyChart = Worksheets(" Sheet1 ").ChartObjects.Add(Left:=ActiveCell.Left, _
Width:=400, Top:=ActiveCell.Top, Height:=300)
MyChart.Chart.SetSourceDataSource:=Rng
MyChart.Chart.ChartType = xlColumnClustered
End Sub
Цей конкретний макрос запропонує користувачеві ввести діапазон введення, а потім автоматично створить гістограму, використовуючи діапазон введення, і вставить її на аркуш під назвою Аркуш1 із верхнім лівим кутом діаграми, розташованим у поточній активній клітинці.
У наступному прикладі показано, як використовувати цей макрос на практиці.
Приклад: як створити гістограму у VBA
Припустімо, що в Excel є такий набір даних, який містить інформацію про очки, набрані різними баскетболістами:
Припустімо, ми хочемо використовувати VBA для створення гістограми за допомогою цього набору даних.
Для цього ми можемо створити такий макрос:
SubCreateBarChart ()
Dim MyChart As ChartObject
' get input range from user
Set Rng = Application.InputBox(Prompt:=" Select chart input range ", Type:=8)
'create bar chart
Set MyChart = Worksheets(" Sheet1 ").ChartObjects.Add(Left:=ActiveCell.Left, _
Width:=400, Top:=ActiveCell.Top, Height:=300)
MyChart.Chart.SetSourceDataSource:=Rng
MyChart.Chart.ChartType = xlColumnClustered
End Sub
Щоб запустити цей макрос, ми можемо клацнути вкладку «Розробник» на верхній стрічці в Excel, а потім клацнути «Макроси» .
Потім ми можемо клацнути на діаграмі CreateBarChart і натиснути Run :
Після того, як ми натиснемо «Виконати» , нам буде запропоновано ввести діапазон введення для нашої гістограми:
Ми введемо A1:B7 , а потім натиснемо OK .
Буде автоматично створено та відображено наведену нижче гістограму з верхнім лівим кутом діаграми, розташованим у поточній активній комірці, яка є коміркою D1 :
Примітка . Ви можете змінити значення аргументів Width і Height у функції ChartObjects.Add() , щоб налаштувати ширину та висоту гістограми відповідно.
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:
VBA: як знайти останній використаний рядок
VBA: як підрахувати кількість рядків у діапазоні
VBA: як підрахувати кількість використаних стовпців