Конечно, внедренную диаграмму можно создать и методом Add семейства Charts. В этом случае то, что она является внедренной, специфицируется методом Location объекта chart.
Location Where, Name
Здесь параметр where устанавливает местоположение диаграммы. Допустимыми являются следующие три значения:
-
xlLocationAsNewSheet (создается на новом листе диаграммы),
-
xlLocationAsObject (создается как внедренная диаграмма),
-
xlLocationAutomatic (Excel сам определяет, где создавать диаграмму).
Параметр Name задает имя рабочего листа, на котором располагается диаграмма. Он является обязательным только в случае, если значение параметра Where равно xlLocationAsObject.
Sub ВнедреннаяДиаграмма1()
Dim с As Chart
Set c = Charts.Add
c.ChartType = xlConeCol
c.SetSourceData Source:=Worksheets(1).Range("a1:c6"), PlotBy:=xlColumns
c.Location where:=xlLocationAsObject, Name:="Итого"
End Sub
Внедренные диаграммы являются объектами chartobject и в своей совокупности образуют семейство chartObjects. В методе Add этого семейства параметры Left, Top, width, Height специфицируют местоположение верхнего левого угла диаграммы и ее размеры.
Add(left, Top, Width, Height)
Пример. На основе табличных данных, размещенных в диапазоне А1:С6 создать внедренную диаграмму.
Sub ВнедреннаяДиаграмма2()
Dim с As ChartObject
Set c = Worksheets(1).ChartObjects.Add(100, 100, 250, 200)
c.Chart.ChartType = xl3DColumn
c.Chart.SetSourceData Source:=Worksheets(1).Range("A1:C6"), PlotBy:=xlColumns
End Sub