您可以透過Excel,直接將資料寫入或讀取Google試算表,但在過程中可能會遇到中文變亂碼,以及回傳時間為ISO 8601日期格式的問題。本文將引導您如何解決這些問題,並順利完成資料串接。
事前準備
解決中文亂碼
問題原因: 這是因為在資料傳輸過程中,中文字元的編碼未被正確處理。 解決方法: 使用UrlEncode函式將中文字串進行編碼轉換,即可解決亂碼問題。這個函式可以將中文轉換為URL安全的格式,確保資料在傳輸過程中不會出錯。
處理ISO 8601日期格式
問題原因: Google試算表預設會使用ISO 8601格式來處理日期與時間。[4] 解決方法: 在Google Apps Script中處理: 您可以在Google Apps Script中撰寫程式碼,在回傳資料前,就先將日期時間轉換成您需要的格式。 在Excel中處理: 也可以在Excel VBA中,加入處理ISO 8601格式的函式,將讀取到的日期時間字串轉換為Excel可辨識的日期格式。
GET與POST方法的差異
GET: 會將資料附加在URL後面,格式為?key1=value1&key2=value2。 由於URL長度限制,不適合傳遞大量資料。 在VBA中,使用GET方法時,需將要傳遞的資料字串串接在URL後面。
POST: 將資料放在請求的主體中傳遞,較為安全,且沒有資料長度限制。 在VBA中,使用POST方法時,需將資料放在send方法的參數中。
讀取Google試算表資料
在doGet函式中,撰寫程式碼讀取您需要的儲存格範圍。 將讀取到的資料轉換為JSON格式。 透過ContentService將JSON資料回傳。 在Excel VBA中,使用GET方法呼叫此URL,即可取得JSON格式的資料。 再透過字串處理的方式,將JSON資料解析並填入Excel儲存格中。
沒有留言:
張貼留言
注意:只有此網誌的成員可以留言。