我正在尝试创建Excel模板文件。该模板文件将从Matlab导入数据。然后,我想运行一个宏,该宏允许我根据给定时间想要绘制的内容选择不同的变量进行绘制。 我有一种方法可以选择要绘制的初始数据的列。我只是不确定如何在vba中设置图表模板。
我的模板Excel文件有一个特定的工作表,其中包含4个图形,即扭矩,速度,功率,温度。
我当前拥有的代码就是这样
Sheets("Graphs").Select
ActiveSheet.ChartObjects("Chart 1").Activate
Set My_Active_Chart = AvtiveSheet.ChartObject(1)
Set Range_X = Range(Cells(3, 2), Cells(Last_Row, 2))
ActiveChart.ChartType = xlLine
My_Active_Chart.Chart.SetSourceData Source:=ActiveWorkbook.Sheets("CAN Data")
For X = 1 To Torque_Col_Size
Set Range_Y = Range(Cells(3, Torque_Col(1, X)), Cells(Last_Row, Torque_Col(1, X)))
ActiveCahrt.SeriesCollection.Add Source:=ActiveWorkbook.Sheets("CAN Data").Range_Y
ActiveChart.SeriesCollection(1).XValues = Range_X
Next X
With ActiveChart
.HasTitle = True
ChartTitle = "CAN Torque Data"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Time (s)"
.Axes(xlCatagory, xlPrimary).HasTitle = True
.Axes(xlCatagory, xlPrimary).AxisTitle.Characters.Text = "Torque (Nm)"
End With
但是我在指定数据范围时遇到一些问题,这需要动态进行,因为数据量几乎每次都会改变。
我已经在上一个Sub中指定了Last Data,并将其存储在Last_Row
变量中。
感谢您的帮助。