Нет возможности подтверждения перед отправкой. Единственный вариант - «удалить» повторяющиеся записи «memberID» в электронной таблице ответов формы.
Эта формула (помещенная в ячейку А1 чистого листа в таблице ответов на запросы) сделает это.
=ArrayFormula(sort(vlookup(query({row('Form Responses 1'!A:A),sort('Form Responses 1'!A:D)},"select max(Col1) group by Col3 label max(Col1)''",0),{row('Form Responses 1'!A:A),sort('Form Responses 1'!A:D)},{2,3,4,5},0),1,0))
В моем сценарии ответы на бланки получены в листе = Form Responses 1
. Я создал второй лист = uniquesubmissions
, чтобы поместить формулу массива, которая будет запрашивать ответы. Я также отформатировал столбец A листа uniquesubmissions
как Дата / Время.
Примечание там десять заявок, но только восемь уникальных заявок. Идентификатор участника "S73895" сделал 3 представления, но мы распознаем только самые последние из них и игнорируем остальные. Можно было бы изменить порядок сортировки и принять только самые старые.
Объяснение (перефразируя исходный источник)
{row('Form Responses 1'!A:A),sort('Form Responses 1'!A:D)}
- Создает новый (виртуальный массив), состоящий из 5 столбцов: 1 столбец с номерами строк + 4 столбца исходной таблицы (но отсортированные, так что «последние» даты будут в нижней части таблицы)
query({row('Form Responses 1'!A:A),sort('Form Responses 1'!A:D)},"select max(Col1) group by Col3 label max(Col1)''",0)
Запрос выбирает максимальный номер строки (col1) (для каждого имени (группа по Col3)).
- Эти номера строк (возвращаемые запросом) «ищутся» в одном и том же «виртуальном» массиве (см. Выше), и при совпадении возвращаются столбцы 2, 3, 4 и 5.
Credit
Эта формула была адаптирована из дизайна JPV в ответе в Webapps, Google Spreadsheet Query для уникального и «самого последнего» * 1055 *