Задача
Как говорится в сообщении об ошибке, метод не найден, что должно указывать на объект, для которого вы вызываете этот метод. В вашем случае это записывается в переменную ans
, которая является экземпляром Array
(хотя это будет двумерная переменная). Метод getResponseText()
доступен только для PromptResponse
экземпляров классов.
Решение
Остерегайтесь порядка, в котором вы изменяете свои объекты. Когда вы заключили ui.prompt('yourText')
в скобки, вы сделали преобразование в Array
. Таким образом, вы должны сначала извлечь текст ответа (и в идеале, не переопределять переменную только в случае, если вам может понадобиться этот экземпляр PromptResponse
позже).
Sample
function addFoodstuff(){
var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Carrefour");
var ncol=findTemp();
var tempHead = sh.getRange(1,ncol);
var firstEmpty =tempHead.getNextDataCell(SpreadsheetApp.Direction.UP).offset(1,0);
var ui = SpreadsheetApp.getUi();
var answer = ui.prompt("Entrez un aliment"); //keep it unchanged;
var txt =answer.getResponseText();
var values = [[txt]];
firstEmpty.setValues(values);
}
Полезные ссылки
Array
встроенный объект ссылка ;
PromptResponse
класс ссылка ;