我正在嘗試圍繞 Google 表格撰寫一個包裝importdata()器code.gs:
100
101 function cryptofinance(token) {
102 var currentCell = SpreadsheetApp.getCurrentCell();
103 currentCell.setValue('=importdata("https://cryptoprices.cc/" token)');
104 }
105
106 ...
這個想法是從電子表格中的任何作業表中呼叫該函式以獲取任何加密貨幣令牌的價格:
| A
--- -------------------------
| 1 | =cryptofinance("aion") |
--- -------------------------
但是當我嘗試這個時出現錯誤:
| A
--- -------------------------
| 1 | #ERROR |
--- -------------------------
#ERROR Exception: You do not have permission to perform that action. (line 102).
為什么會發生這種情況,我該如何解決?
uj5u.com熱心網友回復:
嘗試這個:
function cryptofinance(token = "AION") {
//Logger.log(UrlFetchApp.fetch(`https://cryptoprices.cc/${token}/`));
return UrlFetchApp.fetch(`https://cryptoprices.cc/${token}/`).getContentText();
}
uj5u.com熱心網友回復:
自定義函式可用于回傳值、句點。
自定義函式不能用于執行任何需要授權才能運行的方法,也不能使用自定義函式修改包含公式的單元格/范圍的屬性。參考。https://developers.google.com/apps-script/guides/sheets/functions
您可以在自定義函式中使用 UrlFetchApp 服務來呼叫外部服務,但您仍然有自定義函式的限制,即 30 秒的執行時間限制。
有關的
- 腳本編輯器中的功能可以正常作業,但不能來自作業表自定義功能
uj5u.com熱心網友回復:
Apps 腳本在運行函式時會假定某些權限,但在某些情況下,您需要appsscripts.json手動更新您的正確 OAuth 權限以授予訪問資料的權限。
要顯示您的appsscripts.json,導航到您的專案設定并切換選項“在編輯器中顯示'appsscript.json'清單檔案”。這應該會在 Apps Scripts 的側邊欄中顯示它。
一旦進入appsscript.json,添加
"oauthScopes": [
"https://www.googleapis.com/auth/spreadsheets",
]
你可以在這里閱讀更多關于它的資訊
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/481401.html
標籤:javascript 谷歌应用脚本 谷歌表格 自定义函数
下一篇:谷歌表中的資料
