2010-02-04 85 views
0

我有一个CSV文件,有三列(A,B,C)。Excel VBA宏:从CSV创建图表?

我可以记录一个宏,其选择色柱A +色柱B,然后插入A的与B.

这工作的图表,但所产生的代码包含硬编码REF到“Sheet 1中”是这样的:

... 
ActiveChart.SetSourceData Source:=Range(_ 
     "'Sheet1'!$A:$A,'Sheet1'!$B:$B,'Sheet1'!$A:$A,'Sheet1'!$B:$B") 
... 

所以我改变了活动文档这样的搭配:

... 
ActiveChart.SetSourceData Source:=ActiveSheet.Range("$A:$B") 
... 

这工作,但我也需要插入使用COL A + COL℃的图表,生成的代码看起来李ke这:

... 
ActiveChart.SetSourceData Source:=ActiveSheet.Range("'Sheet1'!$A:$A,'Sheet1'!$C:$C") 
... 

如何以类似的方式更改此代码,使其sheetname不可知? [问题是如何做我选择两列不相邻彼此 - 我想我是幸运的第一个例子 - 它是一个特例]

回答

1

如何:

ActiveChart.SetSourceData Source:=ActiveSheet.Range("$A:$A,$C:$C") 
+0

作品很棒 - 我必须犯一个打字错误 - 以前由于某种原因,我在图中得到了A + B + C。谢谢 ! – monojohnny 2010-02-04 21:10:06