Формула IMPORTRANGE
извлекает данные из другого листа, подключаясь к нему, что делает его медленнее, чем другие. Поэтому, если вы хотите избежать длительного времени ожидания, обычно лучше минимизировать количество этих внешних вызовов.
Поскольку в вашей электронной таблице достаточно данных, лучшей альтернативой будет использование сценария.
Обходной путь :
Вы можете попробовать использовать этот скрипт и использовать триггер, который запустит его выполнение в указанное вами время вместо использования IMPORTRANGE
который пересчитывает данные каждые 30 минут.
function importRange() {
var ss = SpreadsheetApp.openById("15P9QT4ukwQYnsF7RiHH-e1sSHlK7oyKqhbteiw0_sxQ");
var sourceSheet = ss.getSheetByName("Data");
var urlsSheet = ss.getSheetByName("URLs");
var urls = urlsSheet.getRange("B2:B").getValues();
var j=1;
for (var i=0;i<urls.length;i++) {
if (urls[i][0] != "") {
var valuesToImport = SpreadsheetApp.openByUrl(urls[i][0]).getSheetByName("ClientData").getRange(1,1,3,2).getValues();
sourceSheet.getRange(j,1,3,2).setValues(valuesToImport);
j=j+3;
}
}
}
Сценарий работает, собирая все URL-адреса, проверяя, не являются ли URL-адреса пустыми ячейками, и если да, то получает нужные данные и вставляет их в Data
лист. Поскольку данные, которые нужно вставить в лист, имеют строки 3 , чтобы можно было выполнить эту операцию, выбрав подходящий диапазон без перезаписи ячеек, была использована переменная j
.
Если вы добавите триггер в вышеуказанную функцию со следующими свойствами, ваш скрипт будет выполняться каждый день в течение удобного вам периода времени.
Чтобы добавить триггер, вы должны нажать на этот значок в вашем проекте Apps Script, а затем настройте его, используя указанные выше настройки.
Создать триггер
Настройки триггера
Несколько советов, как избежать длительного ожидания:
Используйте ссылки на закрытый диапазон - , например, вместо B16:M
, вы можете использовать B16:M500
(при условии, что данные, которые вы хотите, заканчиваются на M500
).
Использование скрипта приложений ;
Миграция в базу данных ase - если ваша электронная таблица становится слишком медленной по вашему вкусу, вы всегда можете попробовать альтернативные варианты - например, использовать базу данных для хранения ваших данных и выполнения всех необходимых операций.
Более того, я предлагаю вам проверить эти ссылки, поскольку они могут быть полезны: