#google-apps-script #google-sheets
#google-apps-script #google-sheets
Вопрос:
Согласно документации Google (https://support.google.com/docs/answer/58515?hl=en ) текущее время обновления / пересчета выглядит следующим образом;
Чтобы изменить частоту обновления некоторых функций Google Таблиц:
Откройте электронную таблицу. Выберите Файл> Настройки электронной таблицы. В разделе «Пересчет» выберите параметр из выпадающего меню. Нажмите Сохранить настройки. Примечание: функции внешних данных пересчитывают со следующими интервалами:
Импорт данных: 30 минут Импорт HTML, импорт Feed, Импорт данных, ИмпортXml: 1 час GoogleFinance: 2 минуты
Есть ли какой-либо способ ускорить это? Например, удаление ячейки и последующая ее замена приведут к принудительному обновлению данных. Возможно, это можно сделать, например, с помощью скрипта. Может ли скрипт использоваться сам по себе для извлечения данных с другого листа?
У кого-нибудь есть идеи о том, как это можно сделать? В идеале я хочу обновлять каждые 5 минут.
Большое спасибо
Ответ №1:
Я действительно нашел решение, которое, похоже, работает довольно хорошо;
SpreadsheetApp.getActiveSpreadsheet().getSheetByName("sheet1").getRange('A1').setValue('');
SpreadsheetApp.getActiveSpreadsheet().getSheetByName("sheet1").getRange('A1').setValue('=IMPORTDATA("https://www.dropbox.com/9329382983/file.csv?dl=1")');
- Очистите ячейку с формулой importdata, 2. добавьте формулу importdata обратно.
Затем вы можете настроить этот скрипт для запуска каждые x минут.
Комментарии:
1. Вводная часть, самое чистое, простое, рабочее и как такое элегантное решение, на которое я наткнулся до сих пор. Хорошая работа!
Ответ №2:
насколько я понимаю, все пересчитывается при добавлении или редактировании значений. так что, может быть, скрипт, который запишет случайное значение в ячейку, которую вы не используете (например: Z500 или что-то в этом роде)
, а затем установит управляемые временем триггеры для запуска этого скрипта
, МОЖЕТ быть, это сработает?