XML uitvoer uit Access

Pagina: 1
Acties:
  • 692 views sinds 30-01-2008
  • Reageer

  • GAIAjohan
  • Registratie: Augustus 2005
  • Laatst online: 25-07 09:20
Ik moet vanuit access een tabel exporteren naar XML.
Opzich niet zo moeilijk, denk je: Tabel aanklikken, bestand, export et voila.

Maar ik moet het anders doen. Ik moet in een form gewoon een knop aanklikken en dat ie dan direct gaat exporteren naar XML. Niet via een macro runcommand->export, want dan moet je ook nog een menu door .

Ik vond op het internet dit:
http://www.microsoft.com/...etips/oct05/tips1020.mspx

Mar hoe moet ik dat toepassen?
In Access heb ik _werkelijk_ geen enkel idee. En in notepad, zo een vbs te maken, werkt niet. Ik word gewoon een beetje gek.

Dus:
Knop aanklikken in een form, levert een xml op van een bepaalde tabel. (zonder tussenkomst van menu's!), dus met een macro die een scriptje aanstuurt..
Ik heb geen kaas gegeten van vbs, dus als iemand het mij zou kunnen vertellen :$ .

Er zijn in totaal 5 tabellen, en 1 query die naar XML overgezet moeten worden. Elk natuurlijk door een aparte knop.

Naar aanleiding van de eerder genoemde site maakte ik het volgende

code:
1
2
3
4
5
6
7
Const acExportTable = 0
Set objAccess = CreateObject("Access.Application")
objAccess.OpenCurrentDatabase "C:\Scripts\Test.mdb"

objAccess.ExportXML acExportTable, "Klanten", "c:\scripts\test.xml"
objAccess.Visible = True
objAccess.UserControl = True

Gedaan, om info uit de tabel klanten te halen.
En ja, de database heb ik ook even naar C:\scripts\ gedaan.

Maar als ik dan een macro maak, en kies 'RunCode' En dan expressie maken:
Functions![Test]![Module1]. werkt niet. Maargoed, ik zal wel wat verkeerd doen :( Ook is het laatste vak, als je een expressie maakt geheel leeg..

Ik heb hier wel een boek van Access, maar hierin wordt geen VBS vermeld. Ben al een paar uur bezig op het internet te zoeken, maar het lukt me gewon niet.
Ik heb voorlopig alles lopend via een macro, runcommand -> Export. Maar ik wil dus dat ie direct als ik op de knop in het formulier druk, een xml aanmaakt.
Veelal wordt er op de sites van Google gewoon de simpele manier, -tabel aanklikken -> Bestand -> Export- gemeld.

3600Wp@ zuid


  • Dido
  • Registratie: Maart 2002
  • Laatst online: 16:36

Dido

heforshe

Begin eens te zoeken naar VBa: VB for Applictions. Dat zit namelijk in Access.

Maak een form, hang er een knop op, en hang daar code aan. Geen macro dus.

Meer info over xml uivoeren vanuit VBa staat bijvoorbeeld hier:

http://msdn2.microsoft.com/en-us/aa221224(office.11).aspx

[ Voor 30% gewijzigd door Dido op 23-01-2007 14:41 ]

Wat betekent mijn avatar?


Verwijderd

vbs is een gui-loze scriptingtaal (behalve de obligate message- en inputbox) die losstaat van de officetoepassingen. wat je nodig hebt is de aan de applicaties gekoppelde vb, vba. maak een form, plaats er een commandbutton-opdrachtknop op (annuleer de wizard) en in het click event in de formmodule plaats je enkel een aangepast regeltje 5 van de vbs code die je gevonden hebt:
Visual Basic:
1
2
3
Private Sub Knop_Click()
  Application.ExportXML acExportTable,"Klanten","c:\scripts\test.xml"
End Sub

  • GAIAjohan
  • Registratie: Augustus 2005
  • Laatst online: 25-07 09:20
Verwijderd schreef op dinsdag 23 januari 2007 @ 15:24:
vbs is een gui-loze scriptingtaal (behalve de obligate message- en inputbox) die losstaat van de officetoepassingen. wat je nodig hebt is de aan de applicaties gekoppelde vb, vba. maak een form, plaats er een commandbutton-opdrachtknop op (annuleer de wizard) en in het click event in de formmodule plaats je enkel een aangepast regeltje 5 van de vbs code die je gevonden hebt:
Visual Basic:
1
2
3
Private Sub Knop_Click()
  Application.ExportXML acExportTable,"Klanten","c:\scripts\test.xml"
End Sub
Heel erg bedankt voor de uitleg, van hoe-en-wat, want ik begreep er echt even helemaal niks meer van Zal het zometeen even toepassen, (ben nog maar net thuis). Maar toch vind ik t vreemd, gezien we nooit vb gehad hebben tot nu toe. En ook lastig dat het niet in het boek van Access staat, zelfs niet een kleine inleiding erin. Eerst durfde ik hier niet te posten, gezien ik dacht dat het een te nooby vraag was, maar op andere fora gaven ze helemaal geen antwoord..


edit://
Merci, met een kleine aanpassing in jouw code werkt het perfect :)! Ook alle andere is nu ingevuld

[ Voor 4% gewijzigd door GAIAjohan op 23-01-2007 18:39 ]

3600Wp@ zuid