#google-apps-script #google-sheets
Вопрос:
ОК. Извините, я не очень хорошо пишу сценарии. Я смотрел на других и просто не совсем понимаю. У меня есть следующий сценарий, и я хотел бы, чтобы он очистил ячейки формы после отправки формы. Любая помощь приветствуется.
function submitData() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var formSS = ss.getSheetByName("Form"); //Form Sheet
var datasheet = ss.getSheetByName("Data"); //Data Sheet
//Input Values
var values = [[formSS.getRange("C5").getValue(),
formSS.getRange("D5").getValue(),
formSS.getRange("E5").getValue(),
formSS.getRange("F5").getValue(),
formSS.getRange("G5").getValue(),
formSS.getRange("H5").getValue(),
formSS.getRange("I5").getValue()]];
datasheet.getRange(datasheet.getLastRow() 1, 1, 1, 7).setValues(values);
}
Ответ №1:
function submitData() {
var ss = SpreadsheetApp.getActive();
var fsh = ss.getSheetByName("Form"); //Form Sheet
var dsh = ss.getSheetByName("Data"); //Data Sheet
var values = fsh.getRange(5, 3, 1, 7).getValues();
dsh.getRange(dsh.getLastRow() 1, 1, 1, 7).setValues(values);
fsh.getRange(5, 3, 1, 7).clearContent();
}
Я бы, наверное, переписал его так:
function submitData() {
const ss = SpreadsheetApp.getActive();
const fsh = ss.getSheetByName("Form"); //Form Sheet
const dsh = ss.getSheetByName("Data"); //Data Sheet
const frg = fsh.getRange(5, 3, 1, 7);
const vs = frg.getValues();
dsh.getRange(dsh.getLastRow() 1, 1, vs.length, vs[0].length).setValues(vs);
frg.clearContent();
}
Комментарии:
1. Спасибо! Я действительно ценю это!