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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.03.2011, 09:36   #1
tsuman
 
Регистрация: 25.03.2011
Сообщений: 6
По умолчанию Перевод из Excel в XML по опред. требованиям

Подскажите пожалуйста! Можно ли экспортировать макросами книгу из excel в XML с определенным синтаксисом? Или же это нужно делать другими программными средствами! И если кто чем-то подобным занимался - чем удобней, или проще осуществить данный экспорт? Заранее спасибо за ответы!
tsuman вне форума Ответить с цитированием
Старый 25.03.2011, 09:37   #2
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Можно.
нужен пример xls и xml
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 25.03.2011, 10:25   #3
tsuman
 
Регистрация: 25.03.2011
Сообщений: 6
По умолчанию

Я приложу файлики. Посмотрите пожалуйста! Я понимаю что с помощью схемы можно, но в каком направлении двигаться не пойму. Есть ещё программка совместимая с VisualBasic 5 и 6.
Список:
Сводная для передачи.xls - файл excel для экспорта
samle.xml - правильно собранный файл xml прошедший верификацию.
Регламент загрузки переходных контрактов v8.pdf - свод правил построения xml
excelToXml.zip - программа на VB
Вложения
Тип файла: zip ExcelToXML.zip (12.5 Кб, 51 просмотров)
Тип файла: zip XML XLS.zip (543.5 Кб, 35 просмотров)
tsuman вне форума Ответить с цитированием
Старый 25.03.2011, 10:51   #4
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Вот схема вашего xml
Вечером дома займусь



Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 25.03.2011, 22:36   #5
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Вам надо в соответствии со схемой дерево заполнять
Как пример,в цикле заполняеете.У вас 21 вложение согласно схеме.
Работы по написанию -МОРЕ,но эта задача выполнима .

Код:
Public Sub ExportXML(Filename As String)
Dim FSO As Object
Dim objStream As Object
Dim j As Integer
Set FSO = CreateObject("Scripting.FileSystemObject")
Set objStream = FSO.CreateTextFile(Filename)
With objStream
   strLine = ""
    strLine = "<?xml version=" & Chr(34) & "1.0" & Chr(34) & " encoding=" & Chr(34) & "UTF-8" & Chr(34) & "?>"
    .WriteLine strLine
    strLine = "<oos:contractBatch xmlns:oos=" & Chr(34) & "http://zakupki.gov.ru/oos/integration/1" & Chr(34) & ">"
     .WriteLine strLine
    '-------------- Начало нового контракта
    '
      strLine = "<oos:contract>"
     .WriteLine strLine
       strLine = "<oos:regNum807>" & 8235307000019# & "</oos:regNum807>"
        .WriteLine strLine
         strLine = "<oos:number>" & 76 & "</oos:number>"
         .WriteLine strLine
           strLine = "<oos:foundation>"
            .WriteLine strLine
             strLine = "<oos:singleCustomer>" & "true" & "</oos:singleCustomer>"
              .WriteLine strLine
               strLine = " </oos:foundation>"
               .WriteLine strLine
' ----------------------------------------------------
????????????????????????????????????????????????????????
'-----------------------------------------------------
               strLine = "<oos:customer>"
             .WriteLine strLine
             strLine = " <oos:regNum>03481000004</oos:regNum>"
           .WriteLine strLine
          strLine = "</oos:customer>"
        .WriteLine strLine
        strLine = "</oos:contract>"
      .WriteLine strLine
      
      '------- окончание контракта
      '
      strLine = ""
     strLine = "</oos:contractBatch>"
    .WriteLine strLine
    .Close
End With
    Set objStream = Nothing
    Set FSO = Nothing
MsgBox " ÎÊ", vbQuestion

End Sub
Анализ,обработка данных Недорого

Последний раз редактировалось doober; 26.03.2011 в 11:32.
doober вне форума Ответить с цитированием
Старый 28.03.2011, 08:02   #6
tsuman
 
Регистрация: 25.03.2011
Сообщений: 6
По умолчанию

Спасибо за помощь!
Есть пару вопросов:
1. Каким образом Вы получили схему xml?
2. Переписывание программки на VB будет дольше. Чтобы одним нажатием кнопки он проходил по столбцам и заносил необходимую инфу в xml?
tsuman вне форума Ответить с цитированием
Старый 28.03.2011, 08:11   #7
tsuman
 
Регистрация: 25.03.2011
Сообщений: 6
По умолчанию

Т.е. как я понял, я должен внести в код необходимые вложения с описанием хранящихся там данных! так?
А как потом всё это запустить?
tsuman вне форума Ответить с цитированием
Старый 28.03.2011, 08:20   #8
tsuman
 
Регистрация: 25.03.2011
Сообщений: 6
По умолчанию

как макрос будет узнавать, из какой ячейки данные брать? ячейки в схеме и в документе не совпадают!
tsuman вне форума Ответить с цитированием
Старый 28.03.2011, 10:46   #9
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Цитата:
Сообщение от tsuman Посмотреть сообщение
Спасибо за помощь!
Есть пару вопросов:
1. Каким образом Вы получили схему xml?
2. Переписывание программки на VB будет дольше. Чтобы одним нажатием кнопки он проходил по столбцам и заносил необходимую инфу в xml?
Та программа написана под другую задачу.
Индивидуальная схема-индивидуальная программа.
Если вы разберетесь в какой элемент вставлять значение с какой ячейки проблем не будет.Откройте ваш файл XML в ,Notepad++ и вам будет намного проще разобраться в структуре файла
Анализ,обработка данных Недорого

Последний раз редактировалось doober; 28.03.2011 в 10:54.
doober вне форума Ответить с цитированием
Старый 28.03.2011, 12:53   #10
tsuman
 
Регистрация: 25.03.2011
Сообщений: 6
По умолчанию

Понятно! ещё хотел спросить про формат значений! Как мне организовать формат записи yyyy-mm-dd???

Например здесь:
Код:
strLine = "<oos:signDate>" yyyy-mm-dd "</oos:number>"
         .WriteLine strLine
tsuman вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевод из MDB в XML artemavd БД в Delphi 28 14.10.2010 09:58
Несоответствие должностным требованиям ACE Valery Свободное общение 45 23.08.2010 03:57
Excel и XML a6a Microsoft Office Excel 3 16.12.2009 10:25
Excel и XML S_Yevgeniy Microsoft Office Excel 10 12.12.2009 13:09
Excel в xml, прошу помощи CaH4oo Microsoft Office Excel 4 20.12.2008 09:31