Как создать круговую диаграмму в 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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *