|
Sub chartadd()
Dim myrange As Range
Dim mychart As ChartObject
Dim r As Integer
Sheet1.Activate
r = Sheet1.Range("a65535").End(xlUp).Row
m = Sheet1.UsedRange.Columns.Count
With Sheet1
.ChartObjects.Delete
Set myrange = .Range(Cells(1, 1), Cells(r, m))
Set mychart = .ChartObjects.Add(120, 120, 400, 200)
With mychart.Chart
.ChartType = xlXYScatterSmooth
.SetSourceData Source:=myrange, PlotBy:=xlColumns
.ApplyDataLabels ShowValue:=True
.SeriesCollection(1).NewSeries
.SeriesCollection(1).XValues = Sheet1.Range(Cells(1, 2), Cells(1, m))
.SeriesCollection(1).Values = Sheet1.Range(Cells(2, 2), Cells(2, m))
.SeriesCollection(1).Name = "第1天"
For i = 2 To r - 1
.SeriesCollection(i).NewSeries
.SeriesCollection(i).XValues = Sheet1.Range(Cells(1, 2), Cells(1, m))
.SeriesCollection(i).Values = Sheet1.Range(Cells(i + 1, 2), Cells(i + 1, m))
j = 10 * (i - 1)
.SeriesCollection(i).Name = "第j天"
Next
With ActiveChart
.HasTitle = True
.ChartTitle.charaters.Text = "-17℃自然风下围岩温度图"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Character.Text = "温度/℃"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Character.Text = "长度/m"
End With
End With
运行到 红色字体时,就出现错误,说运营错误1004,应用程序或者对象定义错误
End Sub
|
|