Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.01.2017, 10:11   #1
Hitrujka
 
Регистрация: 03.06.2015
Сообщений: 8
Смущение Вставка в excel значений из xml

Здравствуйте. Помогите разобраться что не так.
Нужно чтобы макрос выбрал интересующие нас значения из xml.
В эксел файле в первой строке указываются значения (теги), которые нужно вытащить из xml
Почему-то берет только одну запись из xml
Вложения
Тип файла: 7z xml_to_xls.7z (20.3 Кб, 13 просмотров)

Последний раз редактировалось Hitrujka; 16.01.2017 в 10:13.
Hitrujka вне форума Ответить с цитированием
Старый 17.01.2017, 00:05   #2
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

пробуйте
Вложения
Тип файла: zip hit.zip (21.3 Кб, 15 просмотров)
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Старый 17.01.2017, 08:15   #3
Hitrujka
 
Регистрация: 03.06.2015
Сообщений: 8
Печаль Ошибочка (((

в первый раз вышла ошибка.
Исправила так:
Открываете редактор VBA
Идете в Tools-References
Находите там все пункты, напротив которых красуется MISSING. Снимаете с них галочки.
Жмете Ок.
Сохраняете файл.
Изображения
Тип файла: png skrin.png (38.2 Кб, 124 просмотров)

Последний раз редактировалось Hitrujka; 17.01.2017 в 08:20.
Hitrujka вне форума Ответить с цитированием
Старый 17.01.2017, 08:21   #4
Hitrujka
 
Регистрация: 03.06.2015
Сообщений: 8
По умолчанию

Цитата:
Сообщение от Казанский Посмотреть сообщение
пробуйте
Почему-то подгружает все-равно не все данные (4 из 5ти подгружено). А оригинальные xml содержат больше позиций. Тоже не все подгружает
Это может быть из-за ошибки, которая возникала (скрин выше)?
Спасибо
Если поможете, отблагодарю)))

Последний раз редактировалось Hitrujka; 17.01.2017 в 08:27.
Hitrujka вне форума Ответить с цитированием
Старый 17.01.2017, 15:25   #5
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Hitrujka,
Вы хотите сказать, что в вашем исходном файле ошибки не было, а в моем она появилась
Я никаких ссылок в Tools-References не добавлял, в коде не используются какие-либо сторонние библиотеки.
В приложенном файле XML 4 записи (откройте Блокнотом и убедитесь).
Если из какого-то файла не читаются все записи - приложите его. Видимо, у него отличается структура.
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Старый 17.01.2017, 15:43   #6
Hitrujka
 
Регистрация: 03.06.2015
Сообщений: 8
По умолчанию

Цитата:
Сообщение от Казанский Посмотреть сообщение
Hitrujka,
Вы хотите сказать, что в вашем исходном файле ошибки не было, а в моем она появилась
Я никаких ссылок в Tools-References не добавлял, в коде не используются какие-либо сторонние библиотеки.
В приложенном файле XML 4 записи (откройте Блокнотом и убедитесь).
Если из какого-то файла не читаются все записи - приложите его. Видимо, у него отличается структура.
точно, в тестовом всего 4 записи) Извините.
Рабочую xml-ку скинула Вам на почту.
Посмотрите пожалуйста что не так.
Заранее спасибо
Hitrujka вне форума Ответить с цитированием
Старый 17.01.2017, 16:33   #7
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Hitrujka,
тот способ извлечения данных из XML, который использован в макросе, чувствителен к расположению столбцов. Он должен быть таким же, как в XML, иначе, не найдя поле в текущей записи, макрос берет его из следующей.
Вообще, лучше открывать XML прямо в Excel (он умеет!) и копировать нужные столбцы (или удалять ненужные).
Формат поля NOM_LS_PLAT должен быть текстовым, иначе последние цифры превратятся в 0.
Файл с исправленным порядком столбцов:
Вложения
Тип файла: xls GetXML.xls (46.0 Кб, 19 просмотров)
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Старый 17.01.2017, 16:40   #8
Hitrujka
 
Регистрация: 03.06.2015
Сообщений: 8
По умолчанию

Цитата:
Сообщение от Казанский Посмотреть сообщение
Hitrujka,
тот способ извлечения данных из XML, который использован в макросе, чувствителен к расположению столбцов. Он должен быть таким же, как в XML, иначе, не найдя поле в текущей записи, макрос берет его из следующей.
Вообще, лучше открывать XML прямо в Excel (он умеет!) и копировать нужные столбцы (или удалять ненужные).
Формат поля NOM_LS_PLAT должен быть текстовым, иначе последние цифры превратятся в 0.
Файл с исправленным порядком столбцов:
Спасибо. Все работает и мысль ясна. Как я могу Вас отблагодарить за причиненные страдания?)))
Hitrujka вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вставка php-кода в xml. star007 Общие вопросы Web 11 17.12.2014 20:51
Поиск "проблемных значений" и вставка строки в новый документ Excel Gvaridos Microsoft Office Excel 5 16.11.2010 13:56
Поиск проблемных значений и вставка строк в другой документ Excel Gvaridos Microsoft Office Excel 3 27.10.2010 10:24
вставка значений из списка timtim Microsoft Office Excel 2 23.07.2009 16:17
вставка значений Iskin Microsoft Office Excel 0 27.10.2008 13:21