Я использую такие функции, как ImportHtml, чтобы импортировать табличные данные в Google Sheets. Каждая таблица имеет одинаковые заголовки, но содержит неизвестное количество строк. Мне нужно, чтобы каждая таблица из списка URL-адресов отображалась ниже последней с каждым заголовком, выровненным под теми же столбцами.
Я бы просто ввел список URL-адресов, содержащих таблицы, и каждый из них будет заполнен внутри электронной таблицы один под другим в зависимости от того, сколько URL-адресов я предоставляю в диапазоне.
Данные должны выглядеть так:
Моя проблема в том, что я не знаю, какую функцию (и) мне нужно использовать.
- В основном мне нужно использовать ImportHtml для вставки данных, найти размер таблицы, чтобы следующий URL в столбце A приходился сразу после конца предыдущей таблицы.
- Затем в столбце A я просто увеличиваю индекс, чтобы получить следующий URL из столбца I.
- Теперь я могу вставить функцию = ImportHtml в столбец D, используя URL из столбца A (конечно, я мог бы просто взять следующий индекс из столбца I, но полезно видеть URL рядом с данными).
Достаточно тривиально сообщить столбцу A, когда данные заканчиваются в строках DF, а затем взять следующий индексированный URL-адрес, но я не вижу способа заполнить функцию ImportHtml через столбец D, поскольку она не работает, когда она перезаписывает данные, даже если это данные неактивны ImportHtml.
Я продолжаю сталкиваться с проблемами циклического вычисления, вероятно, потому что я использую неправильные хакерские методы вместо самой эффективной функции.
Обходным решением будет оставить буфер, скажем, 500 ячеек под каждым вызовом, но таблицы могут иметь любую длину от 2 до 2000 строк, поэтому это не работает. Это также затрудняет изменение количества URL-адресов в диапазоне по любой причине.