#google-apps-script #google-sheets #google-sheets-formula
#google-apps-script #google-sheets #google-sheets-формула
Вопрос:
У меня есть 2 листа, Sheet1 и Sheet2. Лист1 используется IMPORTHTML
для импорта 2 таблиц с веб-сайта
=IMPORTHTML("https://www.nseindia.com/live_market/dynaContent/live_watch/option_chain/optionKeys.jsp","table",1)
=IMPORTHTML("https://www.nseindia.com/live_market/dynaContent/live_watch/option_chain/optionKeys.jsp","table",3)
Кроме того, я настроил триггер для извлечения этих данных каждую минуту с веб-сайта. это работает абсолютно нормально.
Лист2 использует функцию ImportRange для импорта данных из листа 1.
=IMPORTRANGE("https://docs.google.com/spreadsheets/d/1bLfZv3L9NtWzeIPfT0ZNM0Osju7T5AR91ybR4e-dBbU/edit#gid=0","trades!A1:V112")
Теперь мне нужно, чтобы Лист2 импортировал данные из листа 1 каждую минуту и вставлял их один под другим, чтобы я мог обрабатывать данные.
Я новичок в Google scripts, и мне удалось получить код в sheet2, который выглядит следующим образом:
function myFunction() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var cellFunction='=IMPORTRANGE("https://docs.google.com/spreadsheets/d/1bLfZv3L9NtWzeIPfT0ZNM0Osju7T5AR91ybR4e-dBbU/edit#gid=0","trades!A1:V112")';
sheet.getRange('A1').setValue(cellFunction);
// This logs the value in the very last cell of this sheet
var lastRow = sheet.getLastRow();
var lastColumn = sheet.getLastColumn();
var lastCell = sheet.getRange(lastRow, lastColumn);
//Logger.log(lastCell.getValue());
sheet.insertRowsAfter(lastRow, 1);
}
Я пытаюсь извлечь последнюю ячейку, а затем вставить 1 строку после последней ячейки, чтобы следующие данные были извлечены ниже первого диапазона.
Я настроил триггер, управляемый временем, для Sheet2, для извлечения данных каждую минуту, но, похоже, он не работает.
Может кто-нибудь сказать мне, где я ошибаюсь? Результатом являются те же данные в тех же ячейках. Данные не извлекаются один за другим
Комментарии:
1. вы могли бы сделать это и с помощью формулы, если вам интересно
2. Вычисление формулы не происходит мгновенно. Прочитайте о сбросе