Read Dataset from a XML File

M

Martin

Hi there,

how can i read datasets from a xml File to create a new Outlook contact Item
with
this data? My problem isn't the creation of a new Outlook Contoact item but
i don't have any
hint how i could read from a xml file. I was reading in further groups about
the msxml parser, but how can i use it to collate e.g. the field
<Firstname>Rudolf</Firstname> to my variable firstname.

I hope you have a hint or some code for me.

thx Martin

Here any lines from my file:

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE ITProfessionals (View Source for full doctype...)>
- <ITProfessionals>
- <ITProfessional>
- <PersonalData>
<ITNr />
<Company>Meyer</Company>
<Salutation>Herr</Salutation>
<Title />
<Lastname>Meyer</Lastname>
<Firstname>Rudolf</Firstname>
<DayOfBirth />
<MonthOfBirth />
<YearOfBirth />
<Gender>Männlich</Gender>
<Nationality>Deutschland</Nationality>
<NationalityCode />
<MotherTongue>Deutsch</MotherTongue>
<Interests />
</PersonalData>
- <Address>
- <PostalAddress>
<PostalStreetAddress1>Stuttgarter Str. 17</PostalStreetAddress1>
<PostalStreetAddress2 />
<PostalStateProvince>Essen</PostalStateProvince>
<PostalCityTown>Essen</PostalCityTown>
<PostalZipCode>35145</PostalZipCode>
<PostalCountry>d</PostalCountry>
<PostalPreferEmail>Yes</PostalPreferEmail>
<PostalPreferLetter>No</PostalPreferLetter>
<PostalPreferFax>No</PostalPreferFax>
</PostalAddress>
......
 
M

Martin

I've got it:

Dim xmlDoc As New MSXML2.DOMDocument40
Dim objNodeList As IXMLDOMNodeList
Dim Firstname, Lastname, PostalStreetAddress1

xmlDoc.async = False
xmlDoc.resolveExternals = False
xmlDoc.Load ("P:\XML\XMLTest.XML")
If (xmlDoc.parseError.errorCode <> 0) Then
Dim myErr
Set myErr = xmlDoc.parseError
MsgBox ("You have error " & myErr.reason)
Else
Set objNodeList = xmlDoc.getElementsByTagName("Lastname")
Lastname = objNodeList.Item(0).Text

Set objNodeList = xmlDoc.getElementsByTagName("Firstname")
Firstname = objNodeList.Item(0).Text

Set objNodeList = xmlDoc.getElementsByTagName("PostalStreetAddress1")
PostalStreetAddress1 = objNodeList.Item(0).Text

MsgBox Firstname & " " & Lastname & Chr(13) & PostalStreetAddress1

' Dim objNode As IXMLDOMNode
' For Each objNode In objNodeList
' Debug.Print objNode.nodeValue
' Next
End If
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top