2019年1月14日 星期一

[Excel VBA] 如何製作動態數據圖表?


合適的數據視覺化(data visualization)不僅僅是簡報的好幫手,對於知識轉譯者,用於跨領域的說明也是一項好工具。市面上,數據視覺化的工具已相當齊全,包含考量使用者友善介面的套裝工具(例如:Tableau),或是依使用者需求可彈性設計的高階程式語言(例如:R和Python)。

然而,對於辦公室工作族群,Microsoft Excel是再熟悉不過的工具,除了靜態的數據視覺化呈現,其實善用Excel函數搭配Excel VBA,也可以達到不錯的動態數據視覺效果,如上述影片所示。

關於上述動態數據範例,其使用的函數如下:

 1.Rank: 用於回傳數列中的排名序號。
 2. Index + Match: 用於資料比對,並回傳比對後的儲存格值。

Excel VBA引用的功能函式如下:

 1. timeGetTime:用於定義動態圖表的間隔時間。
 2. DoEvents:在符合條件中,可處理其他事件產生執行。

另外,該範本上可對特定目標進行標定,使得該特定目標可隨著不同年度而持續顯示。本文範例的特定目標為臺中市,標定為暗紅色。藉由動態圖表明顯可知,在1998年~2017年間,臺中市的工作年齡人口(15歲~64歲)持續不斷增加,並於2017年正式超越高雄市,位居第二順位。

Reference:

中華民國內政部全球資訊網

沒有留言:

張貼留言