Как создать динамическую диаграмму в Excel с помощью VBA (с простыми шагами)

  • Поделись Этим
Hugh West

В этой статье я покажу вам, как можно создать динамическую диаграмму в Excel, используя VBA .

Скачать Рабочую тетрадь для практических занятий

Скачайте эту рабочую тетрадь для тренировок, чтобы заниматься во время чтения этой статьи.

Динамическая диаграмма в Excel.xlsm

5 простых шагов по созданию динамической диаграммы с помощью Excel VBA

Здесь у нас есть рабочий лист под названием Лист1 которая содержит таблицу, содержащую доход и доходы компании за несколько лет.

Наша цель сегодня - генерировать динамический график из этой таблицы с помощью Excel VBA .

⧪ Шаг 1: Открытие окна Visual Basic

Нажмите ALT+F11 на клавиатуре, чтобы открыть Visual Basic окно.

⧪ Шаг 2: Вставка нового модуля

Перейти к Вставка> Модуль опция на панели инструментов. Нажмите на Модуль . Новый модуль под названием Модуль1 будет вставлен.

⧪ Шаг 3: Ввод кода VBA

Это самый важный шаг. Поставьте следующее VBA Код в модуле.

⧭ Код VBA:

 Sub Create_Dynamic_Chart() Application.ScreenUpdating = False With ActiveSheet.Shapes(Application.Caller).Fill.ForeColor If .Brightness = 0 Then .Brightness = -0.150000006 Else .Brightness = 0 End If End With Dim Sequence() As String Desired_Shapes = Array("Rounded Rectangle 1", "Rounded Rectangle 2", "Rounded Rectangle 3") For i = LBound(Desired_Shapes) ToUBound(Desired_Shapes) With ActiveSheet.Shapes(Desired_Shapes(i)) If .Fill.ForeColor.Brightness = -0.150000006 Then Sequence(UBound(Sequence)) = .TextFrame2.TextRange.Characters.Text ReDim Preserve Sequence(UBound(Series) + 1) End If End With Next i If UBound(Sequence)> 0 Then ReDim Preserve Sequence(UBound(Sequence) - 1)Worksheets("Sheet1").ListObjects("Table1").Range.AutoFilter Field:=1 Worksheets("Sheet1").ListObjects("Table1").Range.AutoFilter _ Field:=1, Criteria1:=Sequence, Operator:=xlFilterValues Application.ScreenUpdating = True End Sub 

⧪ Шаг 4: Сохранение рабочей книги в формате XLSM

Затем вернитесь в рабочую книгу и сохраните ее как Рабочая книга Excel с поддержкой макросов .

⧪ Шаг 5: Окончательный вывод

Запустите код из Run Sub / UserForm на панели инструментов.

Вы найдете динамический график, созданный на основе таблицы в Лист2 рабочего листа.

О чем следует помнить

Таблица - это лучший способ создания динамической диаграммы. Потому что если вы добавите или удалите элемент из таблицы, таблица автоматически подстроится, и это произойдет с диаграммой. Но есть и другие способы достижения этой цели, например, используя Именованный диапазон .

Хью Уэст — опытный тренер и аналитик Excel с более чем 10-летним опытом работы в отрасли. Он имеет степень бакалавра в области бухгалтерского учета и финансов и степень магистра делового администрирования. Хью страстно любит преподавать и разработал уникальный подход к обучению, которому легко следовать и который легко понять. Его экспертные знания Excel помогли тысячам студентов и специалистов по всему миру улучшить свои навыки и преуспеть в своей карьере. В своем блоге Хью делится своими знаниями со всем миром, предлагая бесплатные учебные пособия по Excel и онлайн-обучение, чтобы помочь отдельным лицам и компаниям полностью раскрыть свой потенциал.