Excel如何取得多家公司財務報表 - 股票

Lucy avatar
By Lucy
at 2018-06-24T10:35

Table of Contents


Excel如何取得多家公司財務報表

網誌圖文版:

http://www.b88104069.com/archives/4317

上一節成功取得股票代碼及公司名稱的清單,然而以本章宗旨而言,目的仍然是下載財務
報表資料,最好是批次獲得、直接儲存為Excel檔案。上一章《Excel牌告匯率》中,是將
所有批次取得的資料放在同一張工作表,不過本章財務報表的情況不同,因為各家公司損
益表結構不一定相同,比較不適合都放在同一張工作表。有個變通作法,將每家公司的資
料分別放在不同工作表上,在第三章第三節有介紹過如何以VBA程式新增工作表,當時是
以Application.Inputbox參照儲存格的方法,其於本質上仍然是一次一個的手工操作,這
一節要介紹如何批次新增工作表,同時分別取得各家公司的財務報表:

一、從清單中,選擇五檔股票。

二、編寫VBA程式碼如下:

40:想利用Excel作為VBA程式的一部份,首先必須計算Excel資料的範圍,於此範例即為
有多少行,「UsedRange.Rows.Count」便是執行此計算最佳的程式。

70:MsgBox為VBA中相當基本的函數,作用是跳出提示訊息的視窗,函數後面接的字符串
是視窗中顯示的訊息文字。

三、執行巨集後,跳出來的視窗:「資料共有7行」。

四、編寫新增工作表的程式碼:

30:宣告變數。

50~60:計算工作表「一」有多少行資料,由於上一個步驟驗證過,計算結果會比實際行
數多一,所以這裡設定「Row=Row-1」。

80:以變數「i」設置迴圈,參照資料有標題行,因此這裡是從「2」開始,一直到代表總
共有多少行。

100~120:將「Stock」變數設定為「股票代碼-公司名稱」。

140~150:新增工作表,依序以「Stock」更改新工作表的名稱。

五、執行結果,一如預期。

六、最後再添加補充程式碼如下,執行前記得先將上一步驟新增的工作表刪除,避免VBA
提示錯誤。另外這裡的程式行雖然多,主要是UsedRange.Rows.Count、
ActiveWorkbook.Sheets.Add、ActiveSheet.QueryTables.Add三個VBA方法綜合應用,在
先前皆已介紹過,於此不再多作說明。

七、成功取得五家公司2016年度的損益表。

迴圈是程式語言批量取得資料的最方便工具,其特性是利用一個遞增或遞減的變數循環,
如同上一章《Excel牌告匯率》範例所示,此特性在時間日期相關的網頁絶佳合適。這一
章的公司代碼雖然也是數字,可是為不規則不連續,沒辦法直接設置迴圈,所以繞個彎,
改在Excel工作表先建立清單,然後依照行列順序的特性,作為VBA迴圈程式的循環對象。
設計Excel公式時,依照情況需要選擇不同函數搭配,VBA取得網頁資料也是同樣道理,必
須視網頁結構編寫不同的程式碼,這一章和上一章便是極佳例證。

本文內容取自《人人做得到的網路資料整理術》,博客來書店網址:
http://www.books.com.tw/products/0010775391


延伸閱讀:

Excel如何取得公開發行公司財務報表

http://www.b88104069.com/archives/4312

Excel如何取得多期損益報表

http://www.b88104069.com/archives/4313

Excel如何取得股票代碼清單

http://www.b88104069.com/archives/4315

--


周末,我們繼續Excel:精華區=>21.心得=>5.其他=>3.office

會計人的Excel小教室: https://www.facebook.com/acctexcel


--
Tags: 股票

All Comments

Edwina avatar
By Edwina
at 2018-06-25T00:37
還以為是微軟如何用Excel 取得很多公司的資訊
Dinah avatar
By Dinah
at 2018-06-27T09:45
推 謝謝分享
Anonymous avatar
By Anonymous
at 2018-06-27T17:45
Charlie avatar
By Charlie
at 2018-07-02T12:14
我覺得這真讚
Liam avatar
By Liam
at 2018-07-04T07:33
謝謝分享!不知道有沒有利用google spreadsheet的?
Freda avatar
By Freda
at 2018-07-07T11:20
GoogleSpreadsheet現在有些人用,有空我試看看,謝謝
Thomas avatar
By Thomas
at 2018-07-10T14:38
python比較方便
Noah avatar
By Noah
at 2018-07-12T10:19
厲害!
Tristan Cohan avatar
By Tristan Cohan
at 2018-07-15T11:31
Kama avatar
By Kama
at 2018-07-15T20:30
好心人 推
Eden avatar
By Eden
at 2018-07-16T00:36
感謝分享
Susan avatar
By Susan
at 2018-07-19T07:00
好東西留下來
Rachel avatar
By Rachel
at 2018-07-23T10:05
Push...
Elvira avatar
By Elvira
at 2018-07-27T09:10
推 好心人分享
Michael avatar
By Michael
at 2018-07-29T17:01
看不懂 但不推不行
Elma avatar
By Elma
at 2018-07-30T19:10
儘管不懂,但還是感謝分享
Liam avatar
By Liam
at 2018-08-01T23:23
googlespreadsheet試過好像不行,雖然是用import的
Olivia avatar
By Olivia
at 2018-08-02T04:44
Adele avatar
By Adele
at 2018-08-06T13:35
神人

2458義隆

Hedy avatar
By Hedy
at 2018-06-24T02:02
1. 標的:2458 義隆 2. 分類:多 3. 分析/正文: 首先看到義隆近幾年的營運狀況,15年在Tablet觸控IC衰退下滑造成營收衰退後,在16調 整17年重回成長軌道,展望18年,NB觸控板將會持續提升市佔率,主要對手逐漸離開NB觸 控板領域,義隆有望填補缺口,受惠二合一筆電持續增溫,義隆市佔 ...

經濟日報 比賽總覽

Belly avatar
By Belly
at 2018-06-24T01:45
郭哲榮 鈺邦/蜜望實/立隆電/國巨/亞矽/鈞寶 洪任浚 鈞寶/矽創/亞矽/高端疫苗/福裕 周代運 漢磊/環球晶/嘉晶/富鼎/杰力 鄭廳宜 高林/泰山/嘉聯益/亞電/位速 本周可以發現有兩位老師選了幾檔滿冷門的 或許代表資金開始離開被動/晶圓/mosfet 但還是熱門族群 亞矽 張鈞寶 特別被選到 ...

科納-KY重大訊息

Rosalind avatar
By Rosalind
at 2018-06-24T01:16
公告本公司107年股東常會重要決議事項 1.股東常會日期:107/06/22 2.重要決議事項一、盈餘分配或盈虧撥補:通過民國106年度盈餘分派承認案 3.重要決議事項二、章程修訂:通過修訂本公司章程案 4.重要決議事項三、營業報告書及財務報表:通過民國106年度營業報告書 及財務報表承認案。 5.重要決議事 ...

工作超時爭議!郭台銘:中國每月加班上限

Vanessa avatar
By Vanessa
at 2018-06-24T01:12
的確一線都比較喜歡加班 因為出來城市就是要賺錢 與其休假花錢 不如多賺錢 這點以前6、70年代的台灣人也是這樣 以前經起飛 工廠爭相搶工 工人也樂的加班賺錢 有聽過別間工廠午餐多顆滷蛋 工人就跳槽的 還有些工廠讓工人把小孩帶到辦公室 讓女工可以加班 現在經濟較好 下一代沒經歷 連米都 ...

100萬元用來投資股票、創業或留學較好呢?

Kyle avatar
By Kyle
at 2018-06-24T00:55
※ 引述《pipiboygay (喜歡男人的男生)》之銘言: : 非常辛苦的還完全部的學貸,非常努力的終於存到90幾萬(算百萬元) : 這筆錢換作是任何人都是絕對不可能拿去銀行存的 : 現在我很猶豫該怎麼運用這一筆錢... : 選項1.是該用作投資股票,歐印進場,長期持股領股利或賺價差,然後繼續工作好呢?? ...