Option Explicit
' Процедурата чертае графика по данни в Sheet1, намиращи се в област A1:F2
Sub DrawChart()
Dim i%, Addr$
' Попълва желаната област с данни, вторият ред е с формула с параметри от първия ред
' А2=А1*sin(A1*Pi()/9.5)
For i = 1 To 6
Cells(1, i) = 6 + i * 2
Addr = Cells(1, i).Address
Cells(2, i) = "=" & Addr & "*sin(" & Addr & "*Pi()/9.5)"
Next
' Избира желаната област с данни
Range("A1:F2").Select
' Създава обект графика
Charts.Add
' Избира тип графика
ActiveChart.ChartType = xlColumnClustered
' Посочва къде са данните за графиката и как да се разглеждат – по редове
ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("A1:F2"), PlotBy:=xlRows
' Задава положение на графиката
ActiveChart.Location Where:=xlLocationAsObject, Name:="Sheet1"
' Настройва характеристиките на графиката – легенда, оси и др.
ActiveChart.HasLegend = False
ActiveChart.ApplyDataLabels Type:=xlDataLabelsShowValue, LegendKey:=False
ActiveChart.HasDataTable = False
ActiveChart.Axes(xlCategory).Select
Selection.TickLabels.Orientation = xlHorizontal
' Избира областта за чертане в графиката
ActiveChart.PlotArea.Select
' Задава положението и размера на изображението в графиката
Selection.Top = 26
Selection.Height = 162
' Настройва осите в графиката
ActiveChart.ChartArea.Select
ActiveChart.Axes(xlValue).Select
With ActiveChart.Axes(xlValue)
.MinimumScaleIsAuto = True ' Вертикалната ос надолу се самонастройва
.MaximumScale = 20 ' Вертикалната ос нагоре е със стойности до 20
.MinorUnitIsAuto = True
.MajorUnitIsAuto = True
.Crosses = xlAutomatic
.ReversePlotOrder = False
.ScaleType = xlLinear
End With
End Sub
Данни:
8
|
10
|
12
|
14
|
16
|
18
|
3.81
|
-1.65
|
-8.83
|
-13.95
|
-13.39
|
-5.84
|
|
|
|
|
|
|
|
|
|
|
|
|
А2=А1*sin(A1*Pi()/9.5)
Сподели с приятели: |