如果你确定使用一些VBA,一个简单的解决方案可能是(ALT + F11在编辑器来获得,然后插入模块)
Sub GenerateData()
Dim curDataPt As Long, curVal As Long
Dim rngOut As Range, rngIn As Range, rngData As Range, rngVar As Range
'*** SET VALUES HERE ***'
Const maxVal As Long = 2000000
Const minVal As Long = 0
Const stepVal As Long = 1000
Set rngIn = Sheet1.Range("A1")
Set rngOut = Sheet1.Range("B1")
Set rngVar = Sheet1.Range("D1")
Set rngData = Sheet1.Range("E1")
'************************'
For curVal = minVal To maxVal Step stepVal
curDataPt = curVal/stepVal
rngIn = curVal
rngVar.Offset(curDataPt) = curVal
rngData.Offset(curDataPt) = rngOut
Next curVal
Sheet1.Names.Add "DataIn", rngVar.Resize(curDataPt + 1)
Sheet1.Names.Add "DataOut", rngData.Resize(curDataPt + 1)
End Sub
这里假设你的储存罐的大小会在A1上表1,总节省在B1。代码中的Sheet1
是表单对象的代码名称。在VB编辑器窗口的项目浏览器窗格中查看,以确保这是正确的。
使用此方法的方法是运行VBA(ALT + F8)以生成数据集并使用图表向导生成图表。但是,在选择系列选项卡上的源数据时,对于类别(X)轴标签,请输入=Sheet1!DataOut
,输入=Sheet1!DataIn
。
现在,您可以使用不同的最小/最大/步进行游戏,图表会自动更新数据系列。
这是超级,超级酷;正是我所期待的。谢谢! – johnw188 2009-10-11 01:29:40