回 帖 发 新 帖 刷新版面

主题:[讨论]求教高手指导VB获取excel图表动态数据源的方法

Set charttest = xapp.Worksheets(1).ChartObjects.Add(25, 110, 400, 300)
charttest.Chart.ChartType = xlXYScatterSmoothNoMarkers
i = Sheets("sheet1").UsedRange.Columns.Count
      charttest.Chart.SetSourceData Source:=Sheets("Sheet1").Range("A1:chr(64+i) " & 107), PlotBy _
        :=xlColumns

如上图中range(。。。)里的红色语句,我就是想根据excel动态增加列的数据(比如已经有B列,C列数据,我继续增加列的数据,就会产生D列、。。。Z列),来绘制图表,但是选择数据源的时候,那块总是出错,求教高手指导应该如何编写

回复列表 (共2个回复)

沙发

你那个表达式是错误的,在出错的时候,你可以看看你括号内的表达式的值。
例如i=1时,你希望括号内是
“A1:A107”
其实呢,结果却是
“A1:chr(64+i) 107”
原因你对字符串变量的使用不掌握,这个并不需要高手,一个认真的初学者,就可以完成。
正确的代码应该写成:
Range("A1:" & chr(64+i) & 107)
这样当i=3时,括号内的值就是
“A1:C107”

板凳


[em2]非常感谢,你说的对,应该把基础打牢,非常感谢

我来回复

您尚未登录,请登录后再回复。点此登录或注册