2017-01-23 96 views
0

我想創建一個圖表,看起來像這樣創建動態Excel圖表VBA

enter image description here

在我的x軸我想有我這樣的日期,例如2016年1月1日 在我的Y軸應該有多少發生在該日期例如此事件AA號碼4

到目前爲止好我的數據怎麼樣子,我想創建我的圖表上方:

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 

這是我可以用來創建我的圖表的唯一列,因此Y軸的值應該是沒有時間的日期,x軸是每個日期的發生次數,例如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 

我有現在的問題是,我想有日期,相反是在Y:Axix和事件都放在X:軸

(順便說一句我怎麼能只選擇沒有時間日期)

+1

你有沒有考慮使用樞軸和樞軸表? – Wujaszkun

+0

@Wujaszkun一點都沒有,你認爲這會讓我的生活更輕鬆嗎? –

+0

我會這樣做的方式是設置一個表來源數據將被存儲,然後連接一個數據透視表到(所以源範圍將動態改變基於表中的記錄數),並最終添加一個數據透視圖。在VBA中進行設置和維護要容易得多。 – Wujaszkun

回答

1

正如我們一開始的命令後的第一次,我會使用數據透視表指出/圖顯示此數據:

View of all objects

短日期被計數與式:=ROUNDDOWN([@FailureLogStart],0)

透視表配置:

行標籤 - >短日期

值 - 短日期

的>計數

來源 - >表1(放在這裏你的名字)

編輯:一步一步透視表製備:

  1. 準備好輸入 - >格式數據如表

Step One

  • 標記您的表格 - >(色帶)插入 - >數據透視表:

    a。設置表格/範圍字段 - >表格1(或您的表格名稱)

    b。在底部勾選「現有工作表」並放置一個單元格地址,以便放置數據透視表。

    c。完成後,將在您的工作表中插入空白數據透視表。現在在右側面板中將「短日期」拖放到「行標籤」和「值」字段。

  • 點擊支點 - >(絲帶)透視表選項 - >透視圖

  • +0

    btw添加此代碼的自動更新數據透視表的代碼:Private Sub Worksheet_Activate() 表(「透視表」).PivotTables(「PivotTable1」)。RefreshTable End Sub –

    +0

    圖表連接到數據透視表,所以它只會響應樞軸過濾器。如果您需要在數據透視表中查看摘要背後的記錄,只需雙擊數字,例如'2017-01-16 \t 3',單擊'3',您將得到一張包含源數據的新表。 – Wujaszkun

    +0

    非常感謝您的努力和時間,幫助我! –