【问题标题】:google sheets apps script谷歌表格应用程序脚本
【发布时间】:2021-06-30 07:47:57
【问题描述】:

我想问我有几行代码。直到昨天,一切对我来说都很完美。

现在,当我开始调试脚本时,它会在第 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

【问题讨论】:

    标签: debugging google-apps-script google-sheets


    【解决方案1】:

    您收到的Cannot call SpreadsheetApp.getUi() from this context. 异常是因为prompt 必须由用户而不是脚本执行。

    根据documentation

    prompt(prompt) - 将在用户的编辑器中打开一个输入对话框,其中包含给定的消息和一个“确定”按钮。此方法在对话框打开时暂停服务器端脚本。脚本在用户关闭对话框后恢复。

    参考

    【讨论】:

      【解决方案2】:

      尝试替换

      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);
      

      但就您要求某人输入值而言,您将通过工作表而不是脚本编辑器来完成!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-10-14
        • 1970-01-01
        • 1970-01-01
        • 2016-10-08
        • 2021-11-24
        • 1970-01-01
        相关资源
        最近更新 更多