Вы можете сделать это намного меньше чтений ячеек, чем итерировать все строки (столбцы).
В моем случае первый столбец - это SKU элемента, и он обязателен.
Если вы ожидаетефайл с большим количеством строк, в моем случае это может быть 100 000 или более строк, я читаю значение первого столбца на каждые 10 000 строк.
Если ячейка A10000 не пуста, прочитайте A20000 ии т. д.
Таким образом, для файла с 100 000 строк мне нужно максимум 10 чтений одной ячейки, чтобы решить, в каком сегменте из 10 000 строк заканчивается файл.
Например,Допустим, это между 30 000 и 40 000 строк.
Теперь получим среднее значение из указанного выше значения - 35 000. Одно чтение ячейки A35000 еще больше уменьшит область действия до 5000 строк.Следующее среднее (и чтение одной ячейки) еще больше уменьшит объем до 2500 и т. Д.
Приблизительно вам потребуется около 13-14 операций чтения с одной ячейки, если вы знаете, в каком сегменте 10 000 есть конецфайл.Если вы ожидаете файл с 100 000 строк, добавьте максимум 10 чтений ячеек, чтобы определить точный сегмент из 10 000 строк.Это означает максимум около 25 чтений ячеек для файла с 100 000 строк.
Редактировать: если вы ожидаете пустых строк - читайте чуть больше ячеек, например, если вы ожидаете не более 1последовательная пустая строка, каждый раз считывайте 2 последовательные ячейки, например, A10000 и A10001, одна из которых должна быть непустой, или вы находитесь за концом файла.Если вы ожидаете не более 2 последовательных пустых строк, каждый раз считывайте 3 ячейки, например, A10000, A10001 и A10002 и т. Д.