Сценарий приложения получает текущее значение ячейки перед отправкой - PullRequest
0 голосов
/ 27 марта 2020

У меня возникла простая проблема, но я не знаю, есть ли у нее решение или обходной путь. Я в основном создаю поле поиска для пользователей для запроса внешней базы данных на листах Google со значком поиска (чертеж) для выполнения сценария, как показано ниже:

enter image description here

Когда пользователь записывает значение, нажимает ввод и затем нажимает значок, я получаю правильное значение. Но если пользователь редактирует и просто щелкает значок, версия ячейки не отправляется, и значение, которое я получаю в Range.getValue (), является предыдущим значением ячейки. Это немного раздражает для пользователя. Есть ли обходной путь, чтобы получить редактируемое значение или принудительно ввести текущее значение, прежде чем получить его в скрипте приложения? Спасибо

1 Ответ

2 голосов
/ 28 марта 2020

Вот как вы можете сделать это с помощью боковой панели:

Обе функции находятся в Code.gs:

function quizar() {
  var html='Quizar:<br /><form><input type="text" name="text1"/><br /><input type="button" value="Submit" onClick="google.script.run.submit(this.parentNode);" /></form>';
  SpreadsheetApp.getUi().showSidebar(HtmlService.createHtmlOutput(html));
}

function submit(obj) {
  var ss=SpreadsheetApp.getActive();
  var sh=ss.getSheetByName('Sheet10');
  var rg=sh.getRange(2,2).setValue(obj.text1);
  SpreadsheetApp.flush();
}

Просто запустите quizar ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...