[英]google sheets apps script
我想問我有幾行代碼。 直到昨天,一切對我來說都很完美。
現在,當我開始調試腳本時,它以第 24 行的錯誤消息結束 => var ui = SpreadsheetApp.getUi();
.
異常:無法從此上下文調用 SpreadsheetApp.getUi()。 輸入框@ulozDataDoDb.gs:24
但是當我從谷歌表格中的按鈕運行這個腳本時,它起作用了。
有誰知道如何處理它?
function inputBox() {
//definice aktivního sešitu
var ss = SpreadsheetApp.getActive();
//definice aktivního listu
var faktura = ss.getSheetByName("faktura");
var dataBaze = ss.getSheetByName("db");
//definice promenných pro dalši práci
var cisloFaktury = faktura.getRange("I3").getValue();
var varSymbol = faktura.getRange("E22").getValue();
var datumVystaveni = faktura.getRange("datumVystaveni").getValue();
var prijmeni = faktura.getRange("prijmeni").getValue();
var jmeno = faktura.getRange("jmeno").getValue();
var prijmeniJmeno = jmeno + " " + prijmeni;
var castka = faktura.getRange("I55").getValue();
var konstSymb = faktura.getRange("E23").getValue();
var specSymb = faktura.getRange("E24").getValue();
var formaUhrady = faktura.getRange("E19").getValue();
//zapsat do DB
//popis do DB
var ui = SpreadsheetApp.getUi();
var popis_v_DB = ui.prompt("Zadejte název do DB.").getResponseText();
popis_v_DB = popis_v_DB.split(" ").join("_"); //vyhledá mezery a nahradí znakem
Cannot call SpreadsheetApp.getUi() from this context.
您收到的異常是由於該prompt
必須由用戶而不是腳本來操作。
根據文檔:
prompt(prompt)
- 將在用戶的編輯器中打開一個輸入對話框,其中包含給定的消息和一個“確定”按鈕。 此方法在對話框打開時暫停服務器端腳本。 腳本在用戶關閉對話框后恢復。
嘗試更換
var ui = SpreadsheetApp.getUi();
var popis_v_DB = ui.prompt("Zadejte název do DB.").getResponseText();
經過
var popis_v_DB = Browser.inputBox("Informace.", "Zadejte název do DB.", Browser.Buttons.OK_CANCEL);
但是就您要求某人輸入一個值而言,您將通過工作表而不是腳本編輯器來完成!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.