2009-06-16 6 views
4

Ich hatte dieses wiederkehrende Problem mit all meinen Tabellen seit Monaten. Die Tabelle funktioniert einwandfrei und importiert die XML-Dateien, die von unserer Website heruntergeladen wurden. Plötzlich stürzt sie bei jedem Import ab. Die einzige Sache, die es behebt, ist, alle Inhalte (Blätter, Code, Referenzen) zu nehmen und sie in eine neue Arbeitsmappe fallen zu lassen.Importieren von XML-Abstürzen Excel

Dies ist die Zeile, auf der es abstürzt.

ActiveWorkbook.XmlImport URL:=l_strXMLFileName, _ 
ImportMap:=Nothing, Destination:=Sheets("Imported Data").Range("$A$1") 

Hat jemand dieses Problem? Wenn ja, gibt es einen besseren Weg, es vor dem Absturz zu halten?

+0

Was ist die Frage? – jitter

+0

ist das besser? –

Antwort

5

Ich habe diese Frage gestellt, nachdem ich die Antwort gefunden habe, nur weil das für mich so ein Desaster war und mich seit Monaten geplagt hat. Hoffentlich wird dieser Beitrag jemanden davon abhalten, sich die Haare auszuziehen, wie ich es schon so lange getan habe.

Die Lösung ist ziemlich einfach. Was passiert, ist jedes Mal, wenn Excel eine XML-Datei importiert, speichert es eine XML-Map in dieser Tabelle. Wenn Sie also dieselbe Tabelle verwenden und sie weiterhin speichern, werden diese im Laufe der Zeit aufgebaut. Die beste Lösung, die ich gefunden habe, besteht darin, diese XML-Maps einfach zu löschen oder sie wiederzuverwenden (letzteres ist oft keine gute Option).

Hier ist ein Code, sie alle zu löschen (ich dies kurz vor dem Code ausführen ich in meiner Frage enthalten):

Dim XmlMap as XmlMap 
    For Each XmlMap In ActiveWorkbook.XmlMaps 
     XmlMap.Delete 
    Next 
-1

Besteht die Möglichkeit, dass die XML-Eingabe einige illegale/nicht-deklarierte Zeichen enthält?

+0

Ich habe von Leuten gehört, die aufgrund von Formatierung oder ungültigen Zeichen das gleiche Problem mit dem Absturz haben. Ich dachte, das könnte es sein. –