1С: Оптимизация времени разбора большого XLSX файла

Для чтения и разбора файлов формата xlsx на 1С обычно используют следующую схему разбора файла:

ТабличныйДокументХар = Новый ТабличныйДокумент; 
ТабличныйДокументХар.Прочитать(парам.ВременныйФайл,СпособЧтенияЗначенийТабличногоДокумента.Текст);		
// читаем каждый лист по отдельности
Для Каждого ОбластьТД ИЗ ТабличныйДокументХар.Области Цикл
    ОбластьФайла = ТабличныйДокументХар.ПолучитьОбласть(ОбластьТД.Имя,);
    КолВоСтрокФайла = ОбластьФайла.ПолучитьРазмерОбластиДанныхПоВертикали();
    КолВоКолонокФайла = ОбластьФайла.ПолучитьРазмерОбластиДанныхПоГоризонтали();
	НачСтрока=3;КонСтрока=0;
    НачСтрока = ?(НачСтрока = 0, 2, НачСтрока);
    КонСтрока = ?(КонСтрока = 0, КолвоСтрокФайла, КонСтрока);						
    // перебираем все строки без шапки
    Для нСтрокаТФ = НачСтрока ПО КонСтрока Цикл      				
        ПКолонка=Формат(ном_кол, "ЧГ=0");
        Данные=ОбластьФайла.ПолучитьОбласть("R"+ПСтрока + "C1").ТекущаяОбласть.Текст;
    конеццикла
конеццикла    

Так-же встречается другой вариант, у которого есть особенность — не учитывается что файл может содержать листы:

ТабличныйДокументХар = Новый ТабличныйДокумент; 
ТабличныйДокументХар.Прочитать(парам.ВременныйФайл,СпособЧтенияЗначенийТабличногоДокумента.Текст);		
КолВоСтрокФайла = ТабличныйДокументХар.ПолучитьРазмерОбластиДанныхПоВертикали();
КолВоКолонокФайла = ТабличныйДокументХар.ПолучитьРазмерОбластиДанныхПоГоризонтали();  
СтрокиДиапазона =   50000;
НачСтрокаДиапазона = 3; 
КонСтрокаДиапазона = мин(КолВоСтрокФайла, СтрокиДиапазона);
КолВоСтрокФайла_часть = КолВоСтрокФайла;
Пока  КолВоСтрокФайла_часть>0 Цикл
	ОбластьФайла = ТабличныйДокументХар.ПолучитьОбласть(НачСтрокаДиапазона,1,КонСтрокаДиапазона,КолВоКолонокФайла);		
	Если КолвоСтрокФайла = 0 Тогда ТабличныйДокументХар = Неопределено;КонецЕсли;
	Для стр = 1  по КонСтрокаДиапазона-НачСтрокаДиапазона+1 Цикл  
              Данные=ОбластьФайла.Область(стр,2).Текст;
	КонецЦикла;  
	КолВоСтрокФайла_часть = КолВоСтрокФайла_часть-СтрокиДиапазона;
	НачСтрокаДиапазона = НачСтрокаДиапазона +СтрокиДиапазона;
	КонСтрокаДиапазона = КонСтрокаДиапазона +СтрокиДиапазона;
КонецЦикла;

Если сравнивать производительность каждого метода, то выходит следующая картина (для файла размером 254 тыс строк):

Метод 1Метод 2
Время работы кода1 784 сек714 сек