创build一个dynamic的Excel图表VBA

我想创build一个看起来像这样的图表

在这里输入图像说明

在我的X轴上,我想有我的date,例如2016-01-01在我的Y轴上应该有一个这个事件发生了多less事件的数字,例如4

到目前为止,我的数据看起来像是我正在试图创build上面的图表:

FailureLogStart 2017-01-09 18:20 2017-01-14 14:23 2017-01-14 15:14 2017-01-15 11:05 2017-01-16 09:36 2017-01-16 10:02 2017-01-16 10:23 

这是我可以用来创build我的图表的唯一列,所以Y:轴的值应该是没有时间的date,而x轴是每个date的出现次数,以14为例。

我到目前为止所做的:

 Sub Test() Range("Table_Query_from_WatchDog_DB_1[[#All],[FailureLogStart]]").Select ActiveSheet.Shapes.AddChart2(201, xlColumnClustered).Select ActiveChart.SetSourceData Source:=Range("'Controll & Data'!$C$18:$C$25") ActiveSheet.Shapes("Chart 6").IncrementLeft 518.4782677165 ActiveSheet.Shapes("Chart 6").IncrementTop -308.4782677165 End Sub 

我现在所拥有的恰恰相反,我希望date在Y:Axix上,并且出现在X:Axis上

(顺便说一句,我怎么才能select一个没有时间的date)

正如我已经在第一篇文章的命令中所述,我会使用数据透视表/图表来显示这些数据:

所有对象的视图

短date以公式计算: =ROUNDDOWN([@FailureLogStart],0)

数据透视表configuration:

行标签 – >短date

值 – >短date计数

来源 – >表1(把这里的表名称)

编辑:一步一步枢轴表准备:

  1. 准备你的input – >将数据格式化为表格

步骤1

  1. 标记您的表格 – >(色带)插入 – >数据透视表:

    一个。 设置表格/范围字段 – >表格1(或您的表格名称)

    湾 在底部勾选“现有的工作表”,并把一个单元格的地址,你想放置的枢纽。

    C。 完成后,将在您的工作表中插入空白数据透视表。 现在在右侧面板中将“短date”拖放到“行标签”和“值”字段。

  2. 点击数据透视表 – >(function区)数据透视表选项 – >数据透视表