Всем привет. Есть база товаров в Excel (xlsx), нужно переделать в XML. Помогите пожалуйста это осуществить. В архиве примеры
Нужно в XML добавить такое же количество строк как в EXCEL, да еще и столбцы нужно строго определенные и данные из них и еще определенные строки не добавлять, там где указано Распродажа. В общем скажите, реально это вообще или как?
Редактировалось 2 раз(а), последний 2025-03-07 11:59:14
Этот топик читают: Гость
Ответов: 143
Рейтинг: 0
|
|||
карма: 1 |
|
Ответов: 516
Рейтинг: 166
|
|||
Serascer писал(а): реально это вообще или как?скорее да чем нет ![]() если да то пример набросаю , если нет то конкретнее ТЗ.. Редактировалось 1 раз(а), последний 2025-03-07 13:25:22 |
|||
карма: 4 |
| ||
файлы: 1 | primer.zip [1.7KB] [21] |
Ответов: 143
Рейтинг: 0
|
|||
tig-rrr, вроде похоже, приложите схему пожалуйста
|
|||
карма: 1 |
|
Ответов: 8939
Рейтинг: 824
|
|||
Serascer, зачем схема, в Excel "сохранить как" и выбрать формат "*xml"
Другое дело сохранить в формате таблицы HiAsm ![]() |
|||
карма: 19 |
|
Ответов: 143
Рейтинг: 0
|
|||
Леонид, ну потому что в XML из моего архива состав как бы отличается ) Нужно не просто сохранить Excel в XML, а перелопатить его под нужную структуру.
|
|||
карма: 1 |
|
Ответов: 516
Рейтинг: 166
|
|||
Serascer писал(а): приложите схему пожалуйста
|
|||
карма: 4 |
|
Ответов: 143
Рейтинг: 0
|
|||
tig-rrr, большое спасибо! Буду изучать
--- Добавлено в 2025-03-07 16:13:37 tig-rrr, такс ) установил питона и библиотеки. Выбрал xlsx, нажал кнопку xlsx to xml, создался файлик xlsx_xml.py и больше ничего не происходит. Что не так? --- Добавлено в 2025-03-07 16:22:59 Попробовал запустить xlsx_xml.py просто так через питона, выдало вот что: SyntaxError: unexpected character after line continuation character Редактировалось 2 раз(а), последний 2025-03-07 16:22:59 |
|||
карма: 1 |
|
Ответов: 516
Рейтинг: 166
|
|||
Serascer писал(а): Что не так?Вместе с установкой Python устанавливается и - IDLE (Python 3.12 64-bit) вот этот файлик xlsx_xml.py и нужно открыть в этой среде и попробовать запустить оттуда. И детально посмотреть на возможные ошибки. Кстати как правило! В файле пути не должно быть русских букв и пробелов) Тестировал в Windows 11 Pro 64 bit 24H2 Python 3.12 64-bit Мне удобней в Visual Studio Code на Python код отлаживать. Редактировалось 2 раз(а), последний 2025-03-07 16:28:08 |
|||
карма: 4 |
|
Ответов: 143
Рейтинг: 0
|
|||
tig-rrr, У меня вот тоже Windows 11. Вот ошибка какая:
![]() Traceback (most recent call last): File "C:\Users\User\AppData\Local\Programs\Python\Python313\Lib\site-packages\pandas\core\indexes\base.py", line 3805, in get_loc return self._engine.get_loc(casted_key) File "index.pyx", line 167, in pandas._libs.index.IndexEngine.get_loc File "index.pyx", line 196, in pandas._libs.index.IndexEngine.get_loc File "pandas\\_libs\\hashtable_class_helper.pxi", line 7081, in pandas._libs.hashtable.PyObjectHashTable.get_item File "pandas\\_libs\\hashtable_class_helper.pxi", line 7089, in pandas._libs.hashtable.PyObjectHashTable.get_item KeyError: 'Группа оборудования' The above exception was the direct cause of the following exception: Traceback (most recent call last): File "C:\Users\User\Desktop\1.py", line 21, in <module> 'Группа': str(row['Группа оборудования']), File "C:\Users\User\AppData\Local\Programs\Python\Python313\Lib\site-packages\pandas\core\series.py", line 1121, in __getitem__ return self._get_value(key) File "C:\Users\User\AppData\Local\Programs\Python\Python313\Lib\site-packages\pandas\core\series.py", line 1237, in _get_value loc = self.index.get_loc(label) File "C:\Users\User\AppData\Local\Programs\Python\Python313\Lib\site-packages\pandas\core\indexes\base.py", line 3812, in get_loc raise KeyError(key) from err KeyError: 'Группа оборудования' Редактировалось 1 раз(а), последний 2025-03-07 16:30:42 |
|||
карма: 1 |
|
Ответов: 516
Рейтинг: 166
|
|||
Serascer писал(а): Вот ошибка какая:Ошибка KeyError: 'Группа оборудования' указывает на то, что столбец с именем 'Группа оборудования' не найден в DataFrame Serascer писал(а): SyntaxError: unexpected character after line continuation characterЧто-то с символом возможно (\) - (/). В пути файла...х.з. Serascer, если на Python не получается можно попробовать в самом Excel , тут я не силён от слова совсем ) но чего-то на пробовал... Открыть baza.xlsm Нажмите Alt + F8, выберите макрос ExportToXML и нажмите Выполнить. Макрос создаст файл TEST.xml в той же папке, где находится ваш Excel-файл. Для редактирования макроса VBA: Нажмите Alt + F11. Редактировалось 1 раз(а), последний 2025-03-07 18:38:38 |
|||
карма: 4 |
| ||
файлы: 1 | baza.zip [21.7KB] [16] | ||
Голосовали: | Serascer |
Ответов: 865
Рейтинг: 186
|
|||
Serascer писал(а): Всем привет. Есть база товаров в Excel (xlsx), нужно переделать в XML. Помогите пожалуйста это осуществить. В архиве примеры
Нужно в XML добавить такое же количество строк как в EXCEL, да еще и столбцы нужно строго определенные и данные из них и еще определенные строки не добавлять, там где указано Распродажа. В общем скажите, реально это вообще или как? Вот пример на VBJScript https://forum.hiasm.com/getfile/39725 |
|||
карма: 18 |
| ||
файлы: 1 | RAB-VBS.ZIP [10.2KB] [16] |
Ответов: 143
Рейтинг: 0
|
|||
tig-rrr, Я понял в чем дело! Блин, вот сразу об этом подумал и забыл )))) В моем оригинальном файле несколько листов внутри файла. Удалил все кроме того где таблица и всё заработало. А теперь вопрос: есть ли возможность сделать так, чтобы можно было использовать программу без установки питона? Через компиляцию вроде можно было подобное, но я не помню как.
--- Добавлено в 2025-03-07 20:03:24 Gunta, скрипт конечно работает, но ооооооочень долго ) Схема Тигра практически мгновенно все делает. Редактировалось 3 раз(а), последний 2025-03-07 20:48:15 |
|||
карма: 1 |
|
Ответов: 143
Рейтинг: 0
|
|||
Немного модернизировал схему, сделал выбор конкретной страницы в файле. Огромное спасибо tig-rrr за помощь )
Редактировалось 2 раз(а), последний 2025-03-07 21:02:20 |
|||
карма: 1 |
|
Ответов: 865
Рейтинг: 186
|
|||
Serascer писал(а): скрипт конечно работает, но ооооооочень долго ) Схема Тигра практически мгновенно все делаетМожно такой вариант. Он значительно быстрее. https://forum.hiasm.com/getfile/39728 |
|||
карма: 18 |
| ||
файлы: 1 | Excel в XML.zip [10.7KB] [14] |
Ответов: 516
Рейтинг: 166
|
|||
Serascer писал(а): есть ли возможность сделать так, чтобы можно было использовать программу без установки питона? Через компиляцию вроде можно было подобноеВарианты есть и их несколько. Только как обычно есть нюансы. Если без интерфейса , то нужен механизм передачи пути файла в exe (строго привязанный путь и имя файла) (Текстовые файлы: CSV, JSON, XML, TXT ...) (Сети: Сокеты, HTTP, WebSockets) (SQL-базы данных (MySQL,SQLite... ) и т.д. С интерфейсом (Tkinter, PyQt и т.д.) свои нюансы. К примеру при использовании nuitka-(это компилятор Python, который преобразует Python-код в машинный код (C++)). Размер файла EXE(конкретной задачи, без сжатия , оптимизации но со свеми зависимостями) - 66MB, и при запуске и выполнении этой задачи (на моём компе) в сравнении с вариантом от Gunta выражение Serascer писал(а): но ооооооочень долго )![]() Редактировалось 1 раз(а), последний 2025-03-08 13:35:03 |
|||
карма: 4 |
|