Excel VBA宏:从CSV创建图表?

时间:2010-02-04 20:51:52

标签: excel vba charts

我有一个包含三列(A,B,C)的CSV文件。

我可以录制选择Col A + Col B的宏,然后插入A与B的图表。

这样可行,但生成的代码包含对“Sheet1”的硬编码引用,如下所示:

...
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 C插入图表,生成的代码如下所示:

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

如何类似地更改此代码以使其与工作表名称无关? [问题是如何选择两个彼此不相邻的列 - 我认为我在第一个例子中运气好 - 这是一个特例]

1 个答案:

答案 0 :(得分:1)

怎么样:

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