Построение и удаление диаграммы нажатием одной кнопки

We use cookies. Read the Privacy and Cookie Policy

В данном разделе мы рассмотрим трюк, реализовав который можно будет быстро строить и удалять диаграммы нажатием лишь одной кнопки.

Предположим, у нас есть следующие исходные данные (выручка по торговым точкам), на основании которых нужно построить диаграмму (рис. 4.5).

Рис. 4.5. Исходные данные для построения диаграммы

Теперь нам нужно написать код, который представлен в листинге 4.6. Этот код должен быть помещен в модуль рабочего листа.

Листинг 4.6. Быстрое построение и удаление диаграммы

Sub CreateChart()

' Создание диаграммы

Charts.Add

' Параметры диаграммы

' Тип диаграммы

ActiveChart.ChartType = xlLineMarkers

' Заголовок

ActiveChart.SetSourceData Range(«B1:E2»), xlRows

ActiveChart.Location xlLocationAsObject, Name

' Остальные параметры

With ActiveChart

' Заголовок

.HasTitle = True

.ChartTitle.Characters.Text = Name

' Заголовок оси категорий

.Axes(xlCategory, xlPrimary).HasTitle = True

.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text _

= Sheets(Name).Range(«A1»).Value

' Заголовок оси значений

.Axes(xlValue, xlPrimary).HasTitle = True

.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text _

= Sheets(Name).Range(«A2»).Value

' Отображение легенды

.HasLegend = False

.HasDataTable = True

.DataTable.ShowLegendKey = True

' Настройка отображения сетки

With .Axes(xlCategory)

.HasMajorGridlines = True

.HasMinorGridlines = False

End With

With .Axes(xlValue)

.HasMajorGridlines = True

.HasMinorGridlines = False

End With

End With

End Sub

Sub DeleteChart()

' Удаление диаграммы

ActiveSheet.ChartObjects.Delete

End Sub

После написания кода мы уже можем строить диаграмму – для этого достаточно запустить макрос CreateChart. Но мы упростим этот процесс.

Поместим на панель быстрого доступа две кнопки: для создания диаграммы и для удаления диаграммы. Для этого войдем в режим настройки Excel 2007, откроем в нем раздел Настройка, затем в поле Выбрать команды из выберем значение Макросы – в результате в расположенном ниже списке отобразятся названия двух макросов: CreateChart и DeLeteChart (в соответствии с листингом 4.6). С помощью кнопки Добавить поместим их на панель быстрого доступа (то есть в расположенный справа список) и нажмем кнопку ОК. Теперь для создания диаграммы достаточно будет на панели быстрого доступа нажать соответствующую кнопку – результат представлен на рис. 4.6.

Для удаления построенной диаграммы с рабочего листа достаточно на панели быстрого доступа нажать кнопку удаления диаграммы.

В предыдущем разделе мы рассматривали порядок сохранения диаграммы в отдельном файле с расширением GIF. Этот процесс также можно реализовать нажатием одной кнопки, по аналогии с тем, как это описывается в данном разделе.

Рис. 4.6. Создание диаграммы одним нажатием кнопки