Как создать круговую диаграмму в vba (с примером)
Вы можете использовать следующий базовый синтаксис для создания круговой диаграммы в Excel с помощью VBA:
SubCreatePieChart ()
Dim MyChart As ChartObject
' get input range from user
Set Rng = Application.InputBox(Prompt:=" Select chart input range ", Type:=8)
'create pie chart
Set MyChart = Worksheets(" Sheet1 ").ChartObjects.Add(Left:=ActiveCell.Left, _
Width:=400, Top:=ActiveCell.Top, Height:=300)
MyChart.Chart.SetSourceDataSource:=Rng
MyChart.Chart.ChartType = xlPie
End Sub
Этот конкретный макрос запросит у пользователя диапазон ввода, а затем автоматически сгенерирует круговую диаграмму, используя диапазон ввода, и вставит ее на лист с именем Лист1 , при этом верхний левый угол диаграммы будет расположен в активной в данный момент ячейке.
В следующем примере показано, как использовать этот макрос на практике.
Пример: как создать круговую диаграмму в VBA
Предположим, у нас есть следующий набор данных в Excel, содержащий информацию об очках, набранных различными баскетболистами:
Допустим, мы хотим использовать VBA для создания круговой диаграммы с использованием этого набора данных.
Для этого мы можем создать следующий макрос:
SubCreatePieChart ()
Dim MyChart As ChartObject
' get input range from user
Set Rng = Application.InputBox(Prompt:=" Select chart input range ", Type:=8)
'create pie chart
Set MyChart = Worksheets(" Sheet1 ").ChartObjects.Add(Left:=ActiveCell.Left, _
Width:=400, Top:=ActiveCell.Top, Height:=300)
MyChart.Chart.SetSourceDataSource:=Rng
MyChart.Chart.ChartType = xlPie
End Sub
Чтобы запустить этот макрос, мы можем щелкнуть вкладку «Разработчик» на верхней ленте Excel, а затем нажать «Макросы» .
Затем мы можем щелкнуть по элементу с надписью CreatePieChart, а затем нажать «Выполнить» :
Как только мы нажмем «Выполнить» , нам будет предложено ввести диапазон ввода для нашей гистограммы:
Мы напечатаем A1:B7 , затем нажмите OK .
Следующая круговая диаграмма будет автоматически создана и отображена в верхнем левом углу диаграммы, расположенном в активной в данный момент ячейке, которой является ячейка D2 :
Примечание . Вы можете изменить значения аргументов «Ширина» и «Высота» в функции ChartObjects.Add() , чтобы настроить ширину и высоту круговой диаграммы соответственно.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в VBA:
Как создать гистограмму в VBA
Как округлить значения в VBA
Как округлить значения в VBA