我在谷歌和这里都搜索了这个问题的答案,但没有成功。如果之前有人问过,那我道歉。
我正在尝试使用 VBScript 自动化一些管理任务。此特定脚本的目的是从文本文件(带有文本和数字列)中获取一些使用统计信息,并根据数据制作折线图。创建一个 excel 文件并加载数据可以正常工作,但我在创建图表时遇到了问题:我不明白如何选择源数据,并且一直遇到语法错误。互联网上有很多关于如何在 VBA 中执行此操作的信息,从录制的宏中可以明显看出这一点。但我就是不能用 VBScript 来做。这是我的代码(出于隐私原因,某些文件名等已更改):
Set objFSO = CreateObject("Scripting.FileSystemObject")
' Create an instance of Excel (keep program hidden) and open text data file
Set objExcel = CreateObject("Excel.Application")
With objExcel
.Visible = False
.WorkBooks.OpenText("Datafile.txt")
End With
' Name the current worksheet
Set objWorksheet = objExcel.Worksheets(1)
' Name constants for use in chart creation
xlLine = 4
xlPrimary = 1
xlCategory = 1
xlValue = 2
xlColumns = 3
' Define chart properties
Set objChart = objExcel.Charts.Add()
With objExcel.ActiveChart
.ChartType = 1
.HasTitle = True
.ChartTitle.Characters.Text = "usage"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Time"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "units"
.ChartType = xlLine
.HasLegend = False
.SetSourceData Source:="objWorksheet".Range("B2:B10"), Plotby:=xlColumns
End With
使用此代码,我设法创建了一个 excel 文件,其中数据正确排列在列中,并创建了一个单独的表,其中包含一个空图表(具有上述属性)。
但是“.SetSourceData”行给了我错误。我只是不确定如何在 VBScript 中使用它。我对 VBScript 很陌生,所以请原谅语法或对代码的理解中的任何错误。也许我在做一些根本错误的事情?
编辑
我正在使用 Excel 2003。
干杯。