В поисках решения реализации своей очередной задачки нашел код у известного (я так думаю) Товарища Excel. При помощи готового обработчика PQ удалось извлечь форматы ячеек из выгрузки-файла 1С (т.к. ячейки файлов 1С не имеют отступов чтобы зацепиться за них). Но есть необходимость в обработке не одного файла, а несколько однотипных файлов. Удалось исправить строку источника на папку (относительную ссылку) в запросе "Числа": [vba]
Код
source = Folder.Files(Excel.CurrentWorkbook(){[Name="Papka"]}[Content]{0}[Путь к папке])[Content]
[/vba] Загвоздка в том, что функция DecompressFiles в строке MyData возвращает null. Попробовал добавить в конце source {0} - в этом случае он видит первый в списке файл, пробовал добавить {0 ... 100} (число 100 условно, т.к. количество файлов может быть любое) - тоже ошибку выдает. Пробовал в конце писать {Список}, [Список] - название таблицы со списком Binary файлов - тоже ошибку выводит. Подскажите, пожалуйста, как правильно поправить код в запросе "Числа" чтобы отработать несколько файлов в папке. P.S. второй запрос работает отлично с папкой с файлами.
Добрый день, всем участникам форума!
В поисках решения реализации своей очередной задачки нашел код у известного (я так думаю) Товарища Excel. При помощи готового обработчика PQ удалось извлечь форматы ячеек из выгрузки-файла 1С (т.к. ячейки файлов 1С не имеют отступов чтобы зацепиться за них). Но есть необходимость в обработке не одного файла, а несколько однотипных файлов. Удалось исправить строку источника на папку (относительную ссылку) в запросе "Числа": [vba]
Код
source = Folder.Files(Excel.CurrentWorkbook(){[Name="Papka"]}[Content]{0}[Путь к папке])[Content]
[/vba] Загвоздка в том, что функция DecompressFiles в строке MyData возвращает null. Попробовал добавить в конце source {0} - в этом случае он видит первый в списке файл, пробовал добавить {0 ... 100} (число 100 условно, т.к. количество файлов может быть любое) - тоже ошибку выдает. Пробовал в конце писать {Список}, [Список] - название таблицы со списком Binary файлов - тоже ошибку выводит. Подскажите, пожалуйста, как правильно поправить код в запросе "Числа" чтобы отработать несколько файлов в папке. P.S. второй запрос работает отлично с папкой с файлами.Anis625
Может обходной путь есть решения этой задачки? Например VBA+PQ. С коллегой по работе сегодня решили эту задачку путем создания батника (файлы архивирует и сразу распаковывает) и дальше PQ обрабатывает xml файлы SheetDoc по алгоритму из файла примера. Решение, но не удобное. Хотелось бы найти решение в одном файле. Если PQ не может извлекать из папки с excel файлами xml файлы может можно vba+pq решить задачку (без батника)
Может обходной путь есть решения этой задачки? Например VBA+PQ. С коллегой по работе сегодня решили эту задачку путем создания батника (файлы архивирует и сразу распаковывает) и дальше PQ обрабатывает xml файлы SheetDoc по алгоритму из файла примера. Решение, но не удобное. Хотелось бы найти решение в одном файле. Если PQ не может извлекать из папки с excel файлами xml файлы может можно vba+pq решить задачку (без батника)Anis625
Если никто не взялся. Хотел бы спросить. Итоговая задача прочитать XML и что-то сделать с данными? Просто для меня описание задачи не совсем понятное. Если да и заказ свободен, то я готов взяться. Или нужны детали.
Если никто не взялся. Хотел бы спросить. Итоговая задача прочитать XML и что-то сделать с данными? Просто для меня описание задачи не совсем понятное. Если да и заказ свободен, то я готов взяться. Или нужны детали.mathiax90
webmoney: R242692021885 ЯД:410013877261817
Сообщение отредактировал mathiax90 - Пятница, 30.07.2021, 21:47
mathiax90, в связи с длительным отсутствием обратной связи по задачке смотреть стал реже. Надеюсь у вас получится помочь. Не оперативно, но на связи по телефону буду если у вас будет решение задачки. Текущее решение: В первой строке кода PQ указываем путь к папке с файлом (!). Со второй строки код полностью взят у Товарища Excel. Во второй строке указана функция по извлечению из файла Excel xml файл. В третьей строке применяется функция и извлекается xml файл. Дальше код извлекает информацию из этого xml файла. Что необходимо: При помещении в папку 2-х и более файлов (можно сделать копию файла Апрель, Во вложении первого сообщения) третья строка возвращает null. Т.е. получается функция может извлечь xml файл только из одного файла. Предполагаю, что либо в функции (вторая строка кода) либо в третьей строке кода что-то нужно поменять чтобы можно было отрабатывать несколько файлов. Что удалось сделать самим: Промежуточное (не самое удобное) решение удалось сделать второй и третий шаг при помощи батника извлекаем xml файлы из всех файлов в папке. А хотелось бы найти решение без промежуточных решений. В крайнем случае заменить 2-3 шаг на vba.
mathiax90, в связи с длительным отсутствием обратной связи по задачке смотреть стал реже. Надеюсь у вас получится помочь. Не оперативно, но на связи по телефону буду если у вас будет решение задачки. Текущее решение: В первой строке кода PQ указываем путь к папке с файлом (!). Со второй строки код полностью взят у Товарища Excel. Во второй строке указана функция по извлечению из файла Excel xml файл. В третьей строке применяется функция и извлекается xml файл. Дальше код извлекает информацию из этого xml файла. Что необходимо: При помещении в папку 2-х и более файлов (можно сделать копию файла Апрель, Во вложении первого сообщения) третья строка возвращает null. Т.е. получается функция может извлечь xml файл только из одного файла. Предполагаю, что либо в функции (вторая строка кода) либо в третьей строке кода что-то нужно поменять чтобы можно было отрабатывать несколько файлов. Что удалось сделать самим: Промежуточное (не самое удобное) решение удалось сделать второй и третий шаг при помощи батника извлекаем xml файлы из всех файлов в папке. А хотелось бы найти решение без промежуточных решений. В крайнем случае заменить 2-3 шаг на vba.Anis625