[Google Sheets 實戰] 徹底解決報價 Loading 卡死與 #ERROR!:用 Apps Script 打造超穩定的台股記帳表 (包含上櫃 主動ETF)

如果你跟我一樣是個「股價紀錄控」,一定經歷過這樣的崩潰瞬間:打開 Google Sheets 想看今天的損益,結果整排儲存格顯示 Loading... 甚至是 #ERROR!,不管怎麼重新整理都沒用。

這篇文章將分享我從 Excel 到 Google Sheets 的「踩坑進化史」,並提供目前測試最穩定、能通吃上市與上櫃股票的最終解決方案。

為什麼原本的方法行不通?我的試錯歷程

在找到最佳解之前,我嘗試過幾種主流做法,但都有明顯的缺陷:

1. 傳統 Excel 紀錄

  • 缺點:無法自動更新,每次都要手動輸入收盤價,對於想即時掌握現值的投資人來說效率太低。

2. 內建 Google Finance 函數

  • 優點:語法簡單,速度快。

  • 致命傷:對台股支援度不完整。雖然可以抓到大部分上市公司,但上櫃股票(OTC)完全抓不到,導致資產配置缺了一角。

3. 使用 IMPORTXML 抓取網頁資訊

  • 原理:利用爬蟲語法直接去財經網站抓股價。

  • 問題:這是我卡關最久的地方。雖然剛設定好時很完美,但當你的觀察清單變多(例如一次抓 20 檔),Google 會在一瞬間發出太多請求,導致被目標網站視為惡意攻擊(DDoS)或觸發反爬蟲機制。

  • 結果:運氣好時顯示正常,運氣不好時就是整片紅色的 Error,穩定性極差。


最終解決方案:Google Apps Script (GAS) + 快取機制

為了徹底解決上述問題,我改用 Google Apps Script (GAS) 撰寫自定義函數。

這個方法的強大之處在於它可以利用 「快取(Cache)」 技術。簡單來說,當程式抓到股價後,會暫存一段時間,避免在短時間內重複向網站發出請求。這不僅大幅降低了失敗率,也讓試算表的運作更流暢。

🚀 3分鐘設定教學

不需要懂程式碼,只要跟著做複製貼上即可:

Step 1. 開啟程式碼編輯器

在你的 Google Sheet 報價表上方選單,點選 「擴充功能」 (Extensions) > 「Apps Script」

Step 2. 貼上腳本

將編輯器原本的內容清空,貼上我寫好的程式碼。

把程式碼貼上


Step 3. 儲存專案

點選上方的磁片圖示(儲存),並可以將專案命名為「台股報價小幫手」。

Step 4. 開始使用新公式

回到你的試算表頁面,現在你擁有了更強大的自定義公式!

  • 抓取股票名稱

    Excel
    • =GET_TW_NAME(B692)
  • (註:B692 請替換為你的股票代號儲存格)

  • 抓取即時股價

    Excel
    • =GET_TW_PRICE(B692 )


改用 Apps Script 後,最大的改變就是「安心感」。現在打開資產表,不再需要擔心報價跑不出來,無論是上市還是上櫃股票都能精準抓取。如果你也受夠了 IMPORTXML 的不穩定,強烈建議試試看這個方法!






留言

熱門文章