Обработка изменений в ответе формы Google - PullRequest
0 голосов
/ 26 апреля 2018

Цель:

  • Используя Google Forms, я отправляю данные в электронную таблицу. Я использую Apps Script в электронной таблице, чтобы вызвать «при отправке формы», чтобы поместить данные в таблицу в документе Google.

  • Первый столбец в таблице Документов Google содержит идентификатор строки относительно идентификатора строки в Листе Google.

Проблема:

  • Для целей моего приложения некоторые формы требуют, чтобы ответы редактировались / обновлялись.
  • Мой сценарий в настоящее время только добавляет новые строки в таблицу Документов Google (включая изменения, которые я хочу редактировать только соответствующую строку, но не отправлять в новую строку). Очевидно, что строка Google Sheet обновляется автоматически без проблем.

Мой ход мыслей для создания решения:

  • Я добавил столбец в таблицу Документов Google, содержащий уникальный идентификатор (идентификатор строки таблицы)
  • Вопрос: Когда вы внутри и редактируете форму Google (которая уже была отправлена ​​ранее), активирует ли это .activeRow() в Google Sheet? Если это так, я мог бы проверить, если это существующая строка.
  • Вопрос: Как выполнить поиск в столбце таблицы Google Doc, содержащей идентификаторы? Как только я определю строку, как я могу ее отредактировать? Это как-то связано с .getElement();? Различаются ли таблицы в Документах Google по-разному с таблицами в Google Sheets?

Как вы думаете, я на правильном пути? Есть ли гораздо более простое решение, которое я пропускаю?

// Grab the Table
var body = DocumentApp.openById('theid').getBody(),
searchElement = body.findElement(DocumentApp.ElementType.TABLE),
element = searchElement.getElement(),
table = element.asTable();

// Get the last row ID
var range = SpreadsheetApp.getActiveSheet().getLastRow();
// Insert the Row
var cells = [range, theDate, nameWelcome, interest, value, comment, offer];
var addRow = table.appendTableRow();
cells.forEach(function(e, i){
  addRow.insertTableCell(i, e);
});

1 Ответ

0 голосов
/ 26 апреля 2018

Я нашел свой ответ здесь. Как приложение-скрипт в Форме может хранить дополнительные данные на Листе?

Мне нужно запустить код из скрипта формы, а не листа. Таким образом, я могу получить активный URL. Мне также нужно указать на конкретный лист.

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