在 Excel 上使用 VBA 以编程方式创建多级轴图

Programmatically creating multilevel axis chart with VBA on Excel

我有一些代码可以从服务器上的 SAS Table 检索数据。我正在尝试使用 VBA 绘制此数据的图表,而不是先将其复制到工作表(将记录集直接输入图表)

到目前为止,我在这方面取得了成功。问题是,我的图表需要有多级分类 X 轴,我无法仅使用 VBA

自动执行此操作

我想得到的是这样的

http://imgur.com/ElwHwjE(我不能post图片因为缺乏声誉)

但到目前为止我所有的尝试都导致了这个

http://imgur.com/id7Vua0

我知道我可以做到这一点,如果我先从我的记录集中创建一个数据透视表 Table,然后在其上构建一个图表,但如前所述,我试图在不复制数据的情况下执行此操作进入 Sheet.

也尝试过使用 TickLabel 选项(多级和深度),但到目前为止无济于事。

我已经尝试了所有我能想到的方法,但我无法在工作表中没有轴数据的情况下创建多级分类轴。我尝试过各种一维和二维数组,数组元素包括各种 LF、CR 和 CRLF 字符。我试过使用工作表范围,然后将 XValues 转换为数组,当然,这在没有提供可用数组的情况下破坏了轴。

底线:Excel 图表旨在绘制工作表数据,您不能总是绕过这一要求。大多数时候我认为你不应该浪费时间试图绕过它。