Добрый день! Работаю программистом 1с, возникла задача закинуть данные из excel в 1с, и сразу нарисовалась проблема, в каждом файле, а их где-то 1500 тысячи, на 3 листе заданы две одинаковые области печати, пытаюсь открыть файл через COMОбъект("Excel.Application"), Книга = WorkBooks.Open(ИмяФайла, 0, Истина); все виснет, если вручную удалить одну область печати, все проходит хорошо. Не сильна в excel, подскажите - куда копать, как можно обработать все файлы сразу, не открывая их.
Добрый день! Работаю программистом 1с, возникла задача закинуть данные из excel в 1с, и сразу нарисовалась проблема, в каждом файле, а их где-то 1500 тысячи, на 3 листе заданы две одинаковые области печати, пытаюсь открыть файл через COMОбъект("Excel.Application"), Книга = WorkBooks.Open(ИмяФайла, 0, Истина); все виснет, если вручную удалить одну область печати, все проходит хорошо. Не сильна в excel, подскажите - куда копать, как можно обработать все файлы сразу, не открывая их.i_r_a
Сообщение отредактировал i_r_a - Четверг, 13.07.2023, 09:04
Sub bba_file_PrintArea() Application.ScreenUpdating = False ip_ = ThisWorkbook.Path in_ = Dir(ip_ & "\*.xls*") Do While in_ <> "" If in_ <> ThisWorkbook.Name Then Workbooks.Open Filename:=ip_ & "\" & in_ Workbooks(in_).Sheets(3).PageSetup.PrintArea = "" Workbooks(in_).Close True End If in_ = Dir Loop Application.ScreenUpdating = True End Sub
[/vba]файл положите в ту же папку, где 1,5 к файлов
апдэйт: сразу не подумал. как это 2 области печати?
Sub bba_file_PrintArea() Application.ScreenUpdating = False ip_ = ThisWorkbook.Path in_ = Dir(ip_ & "\*.xls*") Do While in_ <> "" If in_ <> ThisWorkbook.Name Then Workbooks.Open Filename:=ip_ & "\" & in_ Workbooks(in_).Sheets(3).PageSetup.PrintArea = "" Workbooks(in_).Close True End If in_ = Dir Loop Application.ScreenUpdating = True End Sub
[/vba]файл положите в ту же папку, где 1,5 к файлов
апдэйт: сразу не подумал. как это 2 области печати?Nic70y