Сообщение об ошибке, с которым вы столкнулись, указывает на то, что метод getClipboardData не является функцией в классе SpreadsheetApp. В Google Apps Script нет прямого метода доступа к системному буферу обмена, но вы можете использовать метод setClipboardText и getClipboardText в классе Utilities для работы с буфером обмена внутри сценария.
Вот исправленный код:
function findAndInsert() {
var sheet = SpreadsheetApp.getActive().getSheetByName("SPRINGING");
var column = sheet.getRange("A2:A");
var values = column.getValues();
var valueToInsert = Utilities.getClipboardText();
for (var i = 0; i < values.length; i++) {
if (!values[i][0]) {
var cell = column.getCell(i + 1, 1);
cell.setValue(valueToInsert);
cell.clearFormat();
cell.pasteValuesOnly();
break;
}
}
}
В этом коде метод Utilities.getClipboardText() используется для получения текста из буфера обмена, а setValue используется для установки значения ячейки на текст, полученный из буфера обмена. Обратите внимание, что методы clearFormat и pasteValuesOnly являются необязательными, но их можно использовать для обеспечения того, чтобы формат ячейки был очищен, а вставлялось только значение.
function findAndInsert() {
var sheet = SpreadsheetApp.getActive().getSheetByName("ПЕРЕПИСКА");
var column = sheet.getRange("A2:A");
var values = column.getValues();
var valueToInsert = SpreadsheetApp.getActive().getClipboardData().getData();
for (var i = 0; i < values.length; i++) {
if (!values[i][0]) {
var cell = column.getCell(i + 1, 1);
cell.setValue(valueToInsert);
cell.clearFormat();
cell.pasteValuesOnly();
break;
}
}
}
Выдаёт: TypeError: SpreadsheetApp.getActive(...).getClipboardData is not a function