Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/экспорт XML в XLS - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по Excel » экспорт XML в XLS (Формулы/Formulas)
экспорт XML в XLS
potapov14 Дата: Пятница, 02.09.2016, 14:46 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
У меня есть очень много XML файлов одинаковой структуры.
Когда я открываю XML прямо в Excele появляется предупреждение а том, что файл может некорректно открыться, я соглашаюсь, далее появляется выбор типа открытия этого файла см вложение, ну и потом он открывается правильно. Пока у меня получается корректно сохранять данные только если открыть XML и сохранить его в XLS средствами самого экселя: - файл - сохранить.

Вопрос, как автоматизировать процесс открытия и сохранения всех файлов?
Может есть возможность написать макрос, который будет:
1) открывать xml файл в виде "xml-таблица" как на скриншоте
2) сохранять результат как XLS с именем файла XML

p.s. Я пробовал втупую переименовывать файл в XLS, но при открытии появляются предупреждения как и в XML. - так не подходит. Пробовал пользоваться конвертерами разными - такжэе структура неверна.
К сообщению приложен файл: 8826451.jpg(40Kb)
 
Ответить
СообщениеУ меня есть очень много XML файлов одинаковой структуры.
Когда я открываю XML прямо в Excele появляется предупреждение а том, что файл может некорректно открыться, я соглашаюсь, далее появляется выбор типа открытия этого файла см вложение, ну и потом он открывается правильно. Пока у меня получается корректно сохранять данные только если открыть XML и сохранить его в XLS средствами самого экселя: - файл - сохранить.

Вопрос, как автоматизировать процесс открытия и сохранения всех файлов?
Может есть возможность написать макрос, который будет:
1) открывать xml файл в виде "xml-таблица" как на скриншоте
2) сохранять результат как XLS с именем файла XML

p.s. Я пробовал втупую переименовывать файл в XLS, но при открытии появляются предупреждения как и в XML. - так не подходит. Пробовал пользоваться конвертерами разными - такжэе структура неверна.

Автор - potapov14
Дата добавления - 02.09.2016 в 14:46
krosav4ig Дата: Пятница, 02.09.2016, 14:55 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 1346
Репутация: 547 ±
Замечаний: 0% ±

Excel 2007, 2013
Может есть возможность
есть
по картинке не лечим
тык


(_)Õvõ(_)
 
Ответить
Сообщение
Может есть возможность
есть
по картинке не лечим
тык

Автор - krosav4ig
Дата добавления - 02.09.2016 в 14:55
potapov14 Дата: Пятница, 02.09.2016, 15:22 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Понял.

Вот исходный файл, такого типа будет очень много файлов.

По поиску искал, всё что-то рядом, но не то, там выборка данных и т.д., а мне надо только открыть и сохранить в формат эксель.
К сообщению приложен файл: test.xml(2Kb)
 
Ответить
СообщениеПонял.

Вот исходный файл, такого типа будет очень много файлов.

По поиску искал, всё что-то рядом, но не то, там выборка данных и т.д., а мне надо только открыть и сохранить в формат эксель.

Автор - potapov14
Дата добавления - 02.09.2016 в 15:22
SLAVICK Дата: Пятница, 02.09.2016, 16:50 | Сообщение № 4
Группа: Модераторы
Ранг: Старожил
Сообщений: 1841
Репутация: 614 ±
Замечаний: 0% ±

2007,2010,2013,2016
как вариант:
[vba]
Код
Sub d()
For Each c In Selection
    If Len(Dir(c)) Then
        Set wb = Workbooks.OpenXML(Filename:=c.Value, LoadOption:=xlXmlLoadImportToList)
        n = Mid(c, 1, Len(c) - 4) & ".xlsx"
        wb.SaveAs Filename:=n, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
        wb.Close
    End If
Next
End Sub
[/vba]

не заметил что нужно не xlsx a xls - вот:
[vba]
Код
Sub d_Xls()
Application.DisplayAlerts = False: Application.ScreenUpdating = False
For Each c In Selection
    If Len(Dir(c)) Then
        Set wb = Workbooks.OpenXML(Filename:=c.Value, LoadOption:=xlXmlLoadImportToList)
        n = Mid(c, 1, Len(c) - 4) & ".xls"
        wb.SaveAs Filename:=n, FileFormat:=xlExcel8
        wb.Close
    End If
Next
Application.DisplayAlerts = True: Application.ScreenUpdating = True
End Sub
[/vba]
К сообщению приложен файл: 10.xls(42Kb)


Иногда все проще чем кажется с первого взгляда.
 
Ответить
Сообщениекак вариант:
[vba]
Код
Sub d()
For Each c In Selection
    If Len(Dir(c)) Then
        Set wb = Workbooks.OpenXML(Filename:=c.Value, LoadOption:=xlXmlLoadImportToList)
        n = Mid(c, 1, Len(c) - 4) & ".xlsx"
        wb.SaveAs Filename:=n, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
        wb.Close
    End If
Next
End Sub
[/vba]

не заметил что нужно не xlsx a xls - вот:
[vba]
Код
Sub d_Xls()
Application.DisplayAlerts = False: Application.ScreenUpdating = False
For Each c In Selection
    If Len(Dir(c)) Then
        Set wb = Workbooks.OpenXML(Filename:=c.Value, LoadOption:=xlXmlLoadImportToList)
        n = Mid(c, 1, Len(c) - 4) & ".xls"
        wb.SaveAs Filename:=n, FileFormat:=xlExcel8
        wb.Close
    End If
Next
Application.DisplayAlerts = True: Application.ScreenUpdating = True
End Sub
[/vba]

Автор - SLAVICK
Дата добавления - 02.09.2016 в 16:50
Мир MS Excel » Вопросы и решения » Вопросы по Excel » экспорт XML в XLS (Формулы/Formulas)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2016 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!