Vertauschte Datenreihen beim öffnen von XML in Excel

  • VB.NET

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von Tommel.

    Vertauschte Datenreihen beim öffnen von XML in Excel

    Hallo zusammen,

    ich habe eine kleines Schönheitsproblem bei einem Code den ich erstellt habe.
    Ich schreibe gerade ein Auswertetool für große Stücklisten. Diese kann man per Drag&Drop in mein Filterprogramm ziehen, nach gewünschten Kriterien Filtern und die gefilterte Liste wird anschließend in Excel angezeigt, wo der Anwender anschließend weiter arbeiten kann.

    Für den Export nach Exel schreibe ich mein Datatable in ein XML (datatable.writexml), erstelle eine neue Excel Instanz und öffne damit das XML. Allerdings ist die Reihenfolge der Spalten im Excel anders gegenüber der ursprünglichen Reihenfolge vertauscht und hat keine logische Sortierung mehr

    Ich habe bereits ausprobiert, was an den Positionen der XML steht indem ich die temporäre XML Datei wieder in ein Dataset geladen habe und ein paar Felder abgefragt habe. innerhalb von VB.NET ist die Reihenfolge noch richtig. Anscheinend werden die Spalten erst beim Öffnen mit Excel vertauscht.

    Hat Excel hier eine andere Sprache bei der Interpretation oder was ist da los?

    Kennt jemand eine Lösung dafür?

    Vielen Dank schonmal!
    Gruß Tommel
    Hallo,

    ich konnte das Problem lösen. Anscheinend hat Excel das XML File "irgendwie" interpretiert und nicht verstanden, dass "Column1" Column1 bedeutet. (Ich vermute die Sortierung ist wegen Column1 und Column10 etc. durcheinander gekommen)

    Die Lösung war auf jeden Fall eine LoadOption anzugeben:

    VB.NET-Quellcode

    1. objXlBook = objXlApp.Workbooks.OpenXML("C:\XMLTEMP.xml", LoadOption:=Microsoft.Office.Interop.Excel.XlXmlLoadOption.xlXmlLoadImportToList)


    Nur für den Fall, dass jemand per Suchfunktion auf dieses Problem stößt...

    Gruß Tommel