Excel. Трюки и эффекты | страница 151
' Создание и настройка внедренной диаграммы
With Worksheets(1).ChartObjects.Add(100, 60, 250, 200)
' Объемная диаграмма
.Chart.ChartType = xl3DArea
' Источник данных
.Chart.SetSourceData Source:=Worksheets(1).Range(«A1:E4»)
End With
End Sub
Результат выполнения данного макроса представлен на рис. 4.3.
На рисунке видно, что диаграмма внедрена в рабочий лист с исходными данными.
Рис. 4.3. Внедренная диаграмма
Можно также создать диаграмму на основе выделенных данных. В листинге 4.3 приведен текст макроса, в котором, помимо прочего, указывается размер диаграммы и ее расположение.
Sub CreateCharOnSelection()
' Создание диаграммы (с заданием положения на листе)
With ActiveSheet.ChartObjects.Add( _
Selection.Left + Selection.Width, _
Selection.Top + Selection.Height, 300, 200).Chart
' Тип диаграммы
.ChartType = xlColumnClustered
' Источник данных – выделение
.SetSourceData Source:=Selection, PlotBy:=xlColumns
' Без легенды
.HasLegend = False
' Без заголовка
.HasTitle = True
.ChartTitle.Characters.Text = «Выручка за период»
' Выделение диаграммы
.Parent.Select
End With
End Sub
Результат выполнения данного макроса представлен на рис. 4.4 – на основании данных таблицы, которая расположена в левом верхнем углу, создана диаграмма.
Рис. 4.4. Диаграмма на основе выделенных данных
Не стоит забывать, что перед запуском макроса необходимо выделить диапазон, данные которого должны быть учтены при построении диаграммы.
При подведении указателя мыши к столбикам диаграммы на экране будет отображаться соответствующая всплывающая подсказка.
Сохранение диаграммы в отдельном файле
После создания диаграммы может возникнуть вопрос – а где ее хранить? Можно использовать для этого листы рабочей книги, а можно сохранить диаграмму в отдельном файле под указанным именем. Например, с помощью приведенного в листинге 4.4 макроса диаграмма будет сохранена под именем Диаграмма. gif.
Sub SaveChart()
' Сохранение выделенной диаграммы в файл
If ActiveChart Is Nothing Then
' Нет выделенных диаграмм
MsgBox «Выделите диаграмму»
Else
' Сохранение...
ActiveChart.Export ActiveWorkbook.path & «\Диаграмма.gif»,
«GIF»
End If
End Sub
Перед запуском макроса сохраняемую диаграмму необходимо выделить – в противном случае при попытке сохранения на экране отобразится окно с сообщением Выделите диаграмму. После применения макроса диаграмма будет сохранена под указанным именем в текущем каталоге.