Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Per Batch (oder Excel-Makro) XML-Dateien mit Inhalt gefüllt aus Excel-Datenbank erstellen

Mitglied: dawson

dawson (Level 1) - Jetzt verbinden

12.09.2011 um 23:00 Uhr, 5919 Aufrufe, 5 Kommentare

Hallo,
ich habe eine Excel-Datei mit einem Tabellenblatt. In jeder Zeile steht ein Datensatz mit den Spalten-Angaben "Datei-Name", "Datei-Endung", "XML-Tag" und "Inhalt".
Jetzt möchte ich via Batch-Datei (oder auch Excel-Makro ggf.) für jede Zeile dieser Datenbank eine XML-Datei anlegen (Datei-Endung sollte variabel sein, also nicht zwingend .xml) und darin als Inhalt ein paar Zeilen XML, bzw. einfacher Text.

Geht das? Welcher Ansatz?
Ich weiß nicht mal, nach was ich da googeln sollte.
Gehts mit Batch oder doch eher via Excel-Marko?

Vielen Dank schon mal.
Mitglied: bastla
12.09.2011 um 23:51 Uhr
Hallo dawson!
Gehts mit Batch oder doch eher via Excel-Marko?
Kommt drauf an, was der Marko so drauf hat ...

Für das mit
ein paar Zeilen XML
fehlt mir momentan grade die nötige Fantasie ...

Grüße
bastla
Bitte warten ..
Mitglied: rubberman
13.09.2011 um 00:10 Uhr
Hallo dawson.

XML Dateien haben sehr strenge Syntaxregeln. Irgendeine Textdatei mit Endung XML ergibt noch lange keine XML Datei. Andererseits hast du durchaus Recht, dass eine XML Datei nicht zwingend die Endung XML haben muss.
Also, mindestens sollten wir noch die Zeichcodierung wissen, sowie den Name des Root-Elements.
Per Batch kommst du im Übrigen nicht an den Inhalt einer Excel Datei, mit VBScript allerdings schon.

Grüße
rubberman
Bitte warten ..
Mitglied: dawson
13.09.2011 um 01:39 Uhr
@bastla: da hat sich doch glatt ein Schreibfehler eingeschlichen. Und du hast ihn gefunden. Ganz toll gemacht!

@rubberman: Also, die "XML"-Datei hat eine Fantasie-Endung, die je Zeile individuell festgelegt ist und der Inhalt wird wie folgt aufgebaut sein (abhängig wieder von einem Zellinhalt in der Zeile):
<rootelement>
<text>Inhalt der Zeile</text>
</rootelement>
Mehr steht da nicht drin.

Gut, d.h. Batch ist nicht. Aber aus einer txt-Datei könnte ich doch via Batch auslesen. Bräuchte es ja aus der Excel-Datei nur als txt mit Semikolon abspeichern.

Gibts da gute Tuts irgendwo im Netz?
Bitte warten ..
Mitglied: bastla
13.09.2011 um 07:39 Uhr
Hallo dawson!
Ganz toll gemacht!
Danke für das Kompliment ...

... das ich leider hinsichtlich der Darstellung Deines Vorhabens (vor allem im Eröffnungsposting) nicht uneingeschränkt zu erwidern vermag - und wenn es jetzt heißt:
<text>Inhalt der Zeile</text>
ist für mich noch immer nicht klar, ob dieser Text nun doch einzeilig ist oder es in der Zelle Zeilenumbrüche gibt ...

Und: Kannst Du bestätigen, dass das "rootelement" ein konstanter Wert ist?

Ansonsten kann ich mich rubberman nur anschließen: Wenn Du den Ablauf automatisieren willst, kommst Du um VB(A/S) nicht herum (und sei es nur, um die Daten in eine Textdatei zu exportieren) ...

Grüße
bastla
Bitte warten ..
Mitglied: rubberman
14.09.2011 um 00:45 Uhr
Hallo Zusammen,

ich versuche mal einen Schuss ins Blaue (vielleicht treffe ich ja zufälligerweise ins Schwarze ).

*.vbs
01.
Const strXLFile = "D:\irgendwo\test.xls"
02.
Const iWorksheet = 1
03.
Const strDestDir = "D:\irgendwo"
04.
Const strEncoding = "UTF-8"
05.
Const strRootElement = "rootelement"
06.

07.
Set objADOS = CreateObject("ADODB.Stream")
08.
objADOS.Type = 2
09.

10.
line = 0
11.
Set objWB = GetObject(strXLFile)
12.
Set objWS = objWB.Worksheets(iWorksheet)
13.
Do While objWS.Cells(line + 1, 1).Text <> ""
14.
  line = line + 1
15.
  With objADOS
16.
    .Open
17.
    .Charset = strEncoding
18.
    .WriteText "<?xml version=""1.0"" encoding=""" & strEncoding & _
19.
      """?>" & vbCrLf & "<" & strRootElement & ">" & vbCrLf & vbTab & "<" & _
20.
      objWS.Cells(line, 3).Text & ">" & objWS.Cells(line, 4).Text & "</" & _
21.
      objWS.Cells(line, 3).Text & ">" & vbCrLf & "</" & strRootElement & ">"
22.
    .Position = 0
23.
    .SaveToFile strDestDir & "\" & objWS.Cells(line, 1).Text & _
24.
      "." & objWS.Cells(line, 2).Text, 2
25.
    .Close
26.
  End With
27.
Loop
28.

29.
Set objWS = Nothing
30.
objWB.Close
31.
Set objWB = Nothing
32.
Set objADOS = Nothing
Die Konstanten am Anfang des Codes anpassen und testen.

Grüße
rubberman
Bitte warten ..
Ähnliche Inhalte
VB for Applications
XML Datei auslesen mit Excel
Frage von kaiuwe28VB for Applications10 Kommentare

Hallo zusammen, ich mal wieder Leider komme ich nicht weiter. Ich möchte aus einem Ordner mit mehreren XML Dateien ...

Microsoft Office
Excel-Makro
gelöst Frage von yuki13Microsoft Office7 Kommentare

Hallo Zusammen!! :-) Ich bin nicht so fit in Excel Makros und wollte mich hier erkundigen, ob mir jemand ...

Microsoft Office
Excel Button Makro
gelöst Frage von Florian86Microsoft Office3 Kommentare

Hallo, ich habe folgendes Problem. Wir haben uns einige Buttons erstellt und mit Macros hinterlegt. Jetzt gibt es einen ...

Microsoft Office
Excel Makro Hilfe
gelöst Frage von freshman2017Microsoft Office8 Kommentare

Moin Moin! Ich würde gerne mit Excel - Kombinationen für Artikelnummern erstellen. Könnte hierbei bereits heraus finden, dass ein ...

Neue Wissensbeiträge
Windows Server

Zähe Update-Installation auf Windows Server 2016

Information von kgborn vor 3 StundenWindows Server1 Kommentar

Mir sind in der Vergangenheit immer wieder Beschwerden von Admins unter die Augen gekommen, die sich über die doch ...

Humor (lol)
Turnschuhe per Firmware lahmlegen
Information von Henere vor 5 StundenHumor (lol)3 Kommentare

Und was kommt demnächst ? Bekomme ich kein Klopapier mehr, weil der Spender einem DDOS unterliegt ? :-) Ich ...

Sicherheit

Sicherheitsrisiko in WinRAR und Co. durch Schwachstelle in UNACEV2.DLL

Information von kgborn vor 9 StundenSicherheit

In der seit 2005 nicht mehr aktualisierten Bibliothek UNACEV2.DLL gibt es eine Path-Traversal-Schwachstelle. Diese ermöglicht es, bei ACE-Archiven Dateien ...

Internet

CDU Propaganda: Urheberschutz im Internet - Ende des digitalen Wild-West

Information von Frank vor 1 TagInternet4 Kommentare

Hallo Administratoren, aus einem Kommentar heraus habe ich folgenden Beiträge von Herr Sven Schulze und Axel Voss (beide CDU ...

Heiß diskutierte Inhalte
Hardware
Frage an Kenner von 5,25 Zoll Laufwerken
Frage von DerWoWussteHardware43 Kommentare

Moin Kollegen. Hier wird gerade im Archiv gewühlt und 5,25 Zoll Disketten ("2S/HD", 96TPI) sollen eingelesen werden. Ich habe ...

Datenbanken
PHP Fatal error: Uncaught Error: Call to undefined function oci connect
gelöst Frage von PlanitecXDatenbanken22 Kommentare

Hallo Zusammen, ich sitze seit Tagen am Problem das ich keine PHP Anwendung mit Anbindung zu Oracle zum laufen ...

Hardware
PC im Selbstbau, Workstation, mittelklasse Gaming
gelöst Frage von MrRobot1997Hardware21 Kommentare

Hallöchen Leute, ich bin seit einigen Jahren leider nicht mehr wirklich im Bild, wenn es um die Hardware und ...

Windows Server
User auf Server Install-Rechte geben
gelöst Frage von killtecWindows Server17 Kommentare

Hi, ich möchte auf mehreren W2016 Servern einem bestimmten User das Recht zum Installieren von Programmen geben. Er soll ...