Как да създадете динамична диаграма в 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("Заоблен правоъгълник 1", "Заоблен правоъгълник 2", "Заоблен правоъгълник 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: Окончателен изход

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

Ще намерите динамична диаграма, създадена въз основа на таблицата в Лист2 на работния лист.

Нещата, които трябва да запомните

Таблицата е най-добрият начин за създаване на динамична диаграма. Защото ако добавите или премахнете елемент от таблицата, таблицата автоматично ще се коригира, както и диаграмата. Но има и други начини за постигане на това, като например използването на Именуван обхват .

Хю Уест е опитен обучител и анализатор на Excel с над 10 години опит в индустрията. Има бакалавърска степен по счетоводство и финанси и магистърска степен по бизнес администрация. Хю има страст към преподаването и е разработил уникален подход на преподаване, който е лесен за следване и разбиране. Неговите експертни познания по Excel са помогнали на хиляди студенти и професионалисти по целия свят да подобрят уменията си и да постигнат отлични резултати в кариерата си. Чрез своя блог Хю споделя знанията си със света, като предлага безплатни уроци за Excel и онлайн обучение, за да помогне на хората и фирмите да достигнат пълния си потенциал.