Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/141: Рейтинг темы: голосов - 141, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 27.02.2012
Сообщений: 21
1

Импорт данных из xml-файла

15.01.2014, 07:13. Показов 28039. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день. Есть такая задача:
  1. Есть xml файл в котором есть перечень сотрудников. Нужно циклом из этого файла фамилию каждого сотрудника выгрузить в отдельную ячейку в екселе. Как сделать это макросом
  2. Как сделать цикл, чтобы он сканировал xml файл до самой последней строки, так как не известно сколько сотрудников будет в нем указано.

Пример файла во вложении
Вложения
Тип файла: rar 9070481out.rar (426 байт, 178 просмотров)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.01.2014, 07:13
Ответы с готовыми решениями:

Много XML-файлов - импорт данных в один Excel
Добрый вечер! Прошу помочь в следующем вопросе. Имеется папка с несколькими тысячами xml-файлов....

Импорт данных из XML файла
Есть ХМЛ файл В нем есть таблица с записями Нужно импортировать ее в программу и затем вызывать...

Импорт данных из XML файла
Добрый день! Я новичок в Qt. Хочу спросить, каким способом можно организовать импорт данных из XML...

Импорт данных из xml-файла в mysql
Здравствуйте, подскажите пожалуйста, как можно импортировать данные из xml-файла в mysql. <ROW...

8
Ушел с CyberForum совсем!
873 / 182 / 25
Регистрация: 04.05.2011
Сообщений: 1,020
Записей в блоге: 110
15.01.2014, 11:13 2
Цитата Сообщение от drzod Посмотреть сообщение
Есть xml файл в котором есть перечень сотрудников. Нужно циклом из этого файла фамилию каждого сотрудника выгрузить в отдельную ячейку в екселе. Как сделать это макросом
файл xml отрывается ровно также как книги экселя
Visual Basic
1
2
dim wb as workbook
Set wb = Workbooks.Open("c:\9070481out\9070481out.xml")
В приложенном файле фамилии хранятся в 10-ом столбце, их значения в целевой файл можно считывать так
Visual Basic
1
wb.Sheets(1).Cells(3, 10).Value
Цитата Сообщение от drzod Посмотреть сообщение
Как сделать цикл, чтобы он сканировал xml файл до самой последней строки, так как не известно сколько сотрудников будет в нем указано.
тело таблицы начинается с третьей строки, для определения общего количества строк можно использовать цикл
Visual Basic
1
For x = 3 To wb.Sheets(1).UsedRange.Rows.Count
Добавлено через 2 минуты
drzod, а строчку которая будет вытягивать значения из xml в целевую книгу экселя уже за тобой
1
0 / 0 / 0
Регистрация: 27.02.2012
Сообщений: 21
15.01.2014, 11:57  [ТС] 3
А представьте около 10000 cm файлов. Надо каждый так загружать? ))) хах, решение нашел. Все спасибо за помощь
0
Ушел с CyberForum совсем!
873 / 182 / 25
Регистрация: 04.05.2011
Сообщений: 1,020
Записей в блоге: 110
15.01.2014, 12:03 4
Цитата Сообщение от drzod Посмотреть сообщение
А представьте около 10000 cm файлов. Надо каждый так загружать? )))
10000 cm ? это как
Цитата Сообщение от drzod Посмотреть сообщение
хах, решение нашел
в чем секрет, если не секрет ?
0
0 / 0 / 0
Регистрация: 27.02.2012
Сообщений: 21
15.01.2014, 12:16  [ТС] 5
В вашем решении я как понимаю каждую xmlку макрос открывает и это визуально видно. Думаю это может плохо сказаться на производительности.

Вот так подсказали решение. Я потом пот себя переделал. Сделал цикл, чтобы выдергивать имя файла из ячейки, он "открывался" там искались определенные параметры. В случае их обнаружения выполнялось условие

А 10000 строк - ну хз, такой объем данных ))

Добавлено через 45 секунд
тут

Добавлено через 1 минуту
Короче домой приду, кину ссылку. С телефона не удобно ))
0
Ушел с CyberForum совсем!
873 / 182 / 25
Регистрация: 04.05.2011
Сообщений: 1,020
Записей в блоге: 110
15.01.2014, 13:15 6
Цитата Сообщение от drzod Посмотреть сообщение
В вашем решении я как понимаю каждую xmlку макрос открывает и это визуально видно. Думаю это может плохо сказаться на производительности.
в моем решении xml открывается один раз и считывает все строки будь их хоть 100500. Или таких xml со списками фамилий не одна ?
0
0 / 0 / 0
Регистрация: 27.02.2012
Сообщений: 21
15.01.2014, 13:28  [ТС] 7
Их Оооочень много

Добавлено через 1 минуту
В любом случае спасибо вам за помощь. Вы единственный откликнулись
0
Ушел с CyberForum совсем!
873 / 182 / 25
Регистрация: 04.05.2011
Сообщений: 1,020
Записей в блоге: 110
15.01.2014, 15:00 8
Цитата Сообщение от drzod Посмотреть сообщение
Их Оооочень много
вчера в этой ветке помогали человеку исправить 150 книг эксель

Добавлено через 24 минуты
если все xml в одной папке то код будет такой
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Sub drzod()
Dim TheFolder, TheFiles, AFile
Set FSO = CreateObject("Scripting.FileSystemObject")
Set TheFolder = FSO.GetFolder("c:\9070481out\") ' папка где лежат все xml
Set TheFiles = TheFolder.Files
For Each AFile In TheFiles
ReadXML (AFile)
Next
End Sub
Sub ReadXML(af As String)
Dim xml_doc As New DOMDocument
Dim nde_test As IXMLDOMElement
xml_doc.Load af
For Each nde_test In xml_doc.SelectNodes("//Сотрудник")
  Debug.Print nde_test.SelectSingleNode("Фамилия").Text
Next
End Sub
Добавлено через 34 минуты
Цитата Сообщение от drzod Посмотреть сообщение
В любом случае спасибо вам за помощь. Вы единственный откликнулись
Не единственный, ведь код с DOMDocument тебе на другом форуме присоветовали
0
72 / 0 / 0
Регистрация: 19.06.2014
Сообщений: 68
16.03.2016, 11:32 9
Добрый день.
А как быть, если файл такого вида, меняю и ничего не получается(
Вложения
Тип файла: zip DIVBK08090001_3124_0000_2_0_3124_0000.zip (612 байт, 47 просмотров)
0
16.03.2016, 11:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.03.2016, 11:32
Помогаю со студенческими работами здесь

Импорт данных из XML файла в DataGridView
Как сделать импорт данных из XML файла в DataGridView? Как читать и загружать xml файл разобрался,...

Импорт данных из большого файла XML в DBF
доброго времени суток! требуется перегнать XML файл в dbf, сложность в том, что XML довольно...

Импорт данных из xml файла в sdf файл
Создаю sdf пустой, хочу скопировать туда выбранную пользователем xml (допустим через диалог...

Импорт данных из XML файла в SQL Manager Lite for PostgreSQL
у меня есть файлы, которые хотел бы импортировать в БД Есть таблица Test с полем xml пытаюсь...

Импорт XML/YML файла
Я хочу импортировать товары через YML файл. Плагин WP All Import не поможет, т.к. в нем просто...

Импорт В Lotus Из Xml Файла
Коллеги! Прошу вас о помощи, кто из вас сталкивался с импортом данных в Lotus из XML файла. Файлик...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru