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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.02.2012, 23:55   #11
manula
Форумчанин
 
Регистрация: 17.04.2011
Сообщений: 168
По умолчанию

Спасибо всем огромное за помощь,а еще уважаемые программисты не могли вы бы подправить файл который я прикрепил ниже,там нужно подправить кнопку "Выгрузка в xml-файл" я внутри макроса кнопки прописал комментарии, что нужно подправить,просто сам никак допереть не могу.примного благодарен
Вложения
Тип файла: rar Наработка.rar (25.9 Кб, 21 просмотров)
manula вне форума Ответить с цитированием
Старый 22.02.2012, 16:09   #12
manula
Форумчанин
 
Регистрация: 17.04.2011
Сообщений: 168
По умолчанию

doober огромное Вам спасибо за помощь и потраченное ваше время,а можно еще такой вопрос,как мне подсчитать сумму столбца F в вашем документе,допустим мне нужно подсчитать и переслать в тег СуммаИтого:
<Сумма>21324,09<Сумма>
.......
<Сумма>4324,43<Сумма>
</Зачислениия>
<СуммаИтого> Сумма всех "сумм"</СуммаИтого>
</СчетПК>
Вот на подобие такой схемы,не могли Вы мне еще помочь с этим,я просто до этого мало программировал с среде VBA поэтому некоторые моменты вызывают затруднения.Благодарю!
manula вне форума Ответить с цитированием
Старый 22.02.2012, 22:39   #13
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Код:
Const strFilePath As String = "C:\TestXML.xml"
Sub ExtportToXML()
    Dim objDoc As MSXML2.DOMDocument
    Dim objNode As MSXML2.IXMLDOMNode
    Dim objRoot As MSXML2.IXMLDOMElement
    Dim objElem As MSXML2.IXMLDOMElement
    Dim ar As Variant
     Dim M_summ As Currency
    Dim i As Integer
    Set objDoc = New DOMDocument
    objDoc.resolveExternals = True
    Set objNode = objDoc.createProcessingInstruction( _
        "xml", "version='1.0' encoding='windows-1251'")
    Set objNode = objDoc.InsertBefore(objNode, _
    objDoc.ChildNodes.Item(0))
    Set objRoot = objDoc.createElement("СчетаПК")
    Set objDoc.DocumentElement = objRoot
    objRoot.setAttribute "ДатаФормирования", "20.02.2012"
    objRoot.setAttribute "НомерДоговора", "123"
   i = 1
   M_summ = 0
  Do
    Set objElem = objDoc.createElement("Сотрудник")
      objElem.setAttribute "Нпп", Cells(i, 1)
      objRoot.appendChild objElem
           Set objNode = objDoc.createElement("Фамилия")
            objNode.Text = Cells(i, 2)
            objElem.appendChild objNode
        Set objNode = objDoc.createElement("Имя")
            objNode.Text = Cells(i, 3)
            objElem.appendChild objNode
        Set objNode = objDoc.createElement("Отчество")
            objNode.Text = Cells(i, 4)
            objElem.appendChild objNode
      Set objNode = objDoc.createElement("ЛицевойСчет")
            objNode.Text = Cells(i, 5)
            objElem.appendChild objNode
      Set objNode = objDoc.createElement("Сумма")
            objNode.Text = Cells(i, 6)
            M_summ = M_summ + CDbl(Cells(i, 6))
            
            objElem.appendChild objNode
      i = i + 1
 Loop Until Cells(i, 1) = ""
   Set objElem = objDoc.createElement("СуммаИтого")
 objElem.Text = M_summ
 objRoot.appendChild objElem
 
    objDoc.Save strFilePath
End Sub
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 01.03.2012, 15:56   #14
manula
Форумчанин
 
Регистрация: 17.04.2011
Сообщений: 168
По умолчанию

Уважаемый doober не могли бы Вы мне помочь вот еще с какой проблемой,у меня есть форма на ней ListBox, при выборе одного из пунктов и нажатию на кнопку создается столько файлов, сколько соответствует данному пункту.
Пример:
- при выборе "данные1" формируется 1 xml-файл,
- при выборе "данные2" формируется 2 xml-файл,
структура у всех файлов одинаковая
И еще не могли бы вы дать мне источники где можно поподробнее изучить работу с DOMDocuments, я бы хотел поближе познакомиться с этим методом.Благодарю за потраченное время,огромное Вам спасибо.
Вложения
Тип файла: rar Экспорт из Excel в xml.rar (30.2 Кб, 15 просмотров)

Последний раз редактировалось manula; 01.03.2012 в 16:04.
manula вне форума Ответить с цитированием
Старый 01.03.2012, 16:10   #15
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Скачайте по ссылке,документация входит в комплект,только на вражеском языке
Есть еще такой сайт http://social.msdn.microsoft.com
А по вашей просьбе ничего не понял,мало информации ,да и волоски в бороде уже заканчиваются
Анализ,обработка данных Недорого

Последний раз редактировалось doober; 01.03.2012 в 16:18.
doober вне форума Ответить с цитированием
Старый 01.03.2012, 16:54   #16
nerv
Форумчанин
 
Аватар для nerv
 
Регистрация: 26.04.2010
Сообщений: 450
По умолчанию

DOM в примерах
Обход DOM
Атрибуты и пользовательские свойства
Добавление и удаление узлов
Тишина – самый громкий звук
nerv вне форума Ответить с цитированием
Старый 02.03.2012, 08:18   #17
manula
Форумчанин
 
Регистрация: 17.04.2011
Сообщений: 168
По умолчанию

Цитата:
Сообщение от doober Посмотреть сообщение
Скачайте по ссылке,документация входит в комплект,только на вражеском языке
Есть еще такой сайт http://social.msdn.microsoft.com
А по вашей просьбе ничего не понял,мало информации ,да и волоски в бороде уже заканчиваются
А именно, что непонятно?какой информации мало,просто вот остался один подводный камень, с которым мне нужна помощь,а за источники и материал,благодарю.
manula вне форума Ответить с цитированием
Старый 20.03.2012, 23:06   #18
Evrica
 
Аватар для Evrica
 
Регистрация: 24.07.2010
Сообщений: 7
По умолчанию

doober, скачал твой конвертер, есть вопрос

нужно привести xml файл к виду
<list_clients>
<id_merch>1</id_merch>
<client_info ident="счет" info="ФИО" />
<client_info ident="счет" info="адрес" />
</list_clients>

получилось почти все, только нету закрывающего тега </list_clients>, в начале пишет <list_clients />
Evrica вне форума Ответить с цитированием
Старый 20.03.2012, 23:26   #19
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Цитата:
Сообщение от Evrica Посмотреть сообщение
doober, скачал твой конвертер, есть вопрос
Он не мой.

Где код самого макроса?
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 20.03.2012, 23:30   #20
Evrica
 
Аватар для Evrica
 
Регистрация: 24.07.2010
Сообщений: 7
По умолчанию

ну я видел что ты выкладывал его))

Код:
Sub ExtportToXML()
    Dim objDoc As MSXML2.DOMDocument
    Dim objNode As MSXML2.IXMLDOMNode
    Dim objRoot As MSXML2.IXMLDOMElement
    Dim objElem As MSXML2.IXMLDOMElement
    Dim ar As Variant
    Dim i As Integer
    Set objDoc = New DOMDocument
    objDoc.resolveExternals = True
    Set objNode = objDoc.createProcessingInstruction( _
        "xml", "version='1.0' encoding='windows-1251'")
    Set objNode = objDoc.InsertBefore(objNode, _
    objDoc.ChildNodes.Item(0))
    Set objRoot = objDoc.createElement("Äàííûå")
    Set objDoc.DocumentElement = objRoot
   i = 1
  Do
    Set objElem = objDoc.createElement("list_clients")
        objRoot.appendChild objElem
               
               
        Set objNode = objDoc.createElement("id_merch")
            objNode.Text = Cells(i, 1)
            objElem.appendChild objNode
        
            
        Set objElem = objDoc.createElement("client_info")
            objElem.setAttribute "ident", Cells(i, 2)
            objNode.appendChild objElem
            objElem.setAttribute "info", Cells(i, 3)
            objRoot.appendChild objElem

        Set objElem = objDoc.createElement("client_info")
            objElem.setAttribute "ident", Cells(i, 4)
            objRoot.appendChild objElem
            objElem.setAttribute "info", Cells(i, 5)
            objRoot.appendChild objElem
            objElem.setAttribute "rest", Cells(i, 6)
            objRoot.appendChild objElem


      i = i + 1
 Loop Until Cells(i, 1) = ""
    objDoc.Save strFilePath
End Sub
Evrica вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
xml to xls, xlsx Diego__ Microsoft Office Excel 4 10.12.2010 10:42
XLS converter XML edition Microsoft Office Excel 1 22.09.2010 19:32
Сonvert из .XML в .CSV или .XLS edition Microsoft Office Excel 1 20.07.2010 21:43
Экспорт xls на xml armagedon_atyrau Microsoft Office Excel 9 29.06.2010 15:52
экспорт из xls в xml для excell 2000 zzz007 Microsoft Office Excel 0 20.08.2009 22:47