PDA

Vollständige Version anzeigen : (Halb-)Defekte Excel Datei


Peter Faltin
05.07.2006, 15:41
Hallo zusammen,

ich habe folgendes Problem:

Ich habe ein kleines Tool geschrieben, welches vollständig über eine VBA GUI bedient wird (auch das speichern wir über eine GUI angestossen) und die Exceltabellen werden im Hintergrund nur als Datenbank "missbraucht". Das klappt auch alles inzwischen ganz gut unter Office 2000 und 2003. Nun hat aber ein Nutzer des Programms es (reproduzierbar) hinbekommen, eine halbdefekte Datei (unter Office 2000) zu erzeugen. Warum halbdefekt: Weil sie beim Öffnen unter Office 2000 Excel zum absturz bringt (Dr. Waston bzw. Fehlerbericht), unter Office 2003 hingegen problemlos funktioniert. Nun hatte ich zunächst vermutet, dass irgendwelche Limitationen von Excel 2000 das Problem sind. Dies ist allerdings nicht der Fall, denn das Problem ist auch reproduzierbar, nachdem ich die Datei unter Excel 2003 auf eine leere Datei (ohne Inhalt und VBA-Skripte) reduziert habe download (http://faltin.net/tmp/min.xls).
Gibt es evtl. eine Art Analyser, mit dem man potentielle Probleme in Excel-Dateien aufspüren kann? Wodurch könnte dieses Problem zustande kommen? Sollten Excel 2000 und 2003 nicht dasselbe Dateiformat nutzen?

Vielen Dank für eure Unterstützung!

jinx
05.07.2006, 18:53
<font size="2" face="Century Gothic">Moin, Peter,

404 Not Found bei Download...</font>

Peter Faltin
05.07.2006, 20:10
Whops! Tut mir leid, man sollte URLs besser nie aus dem Kopf aufschreiben!
Also hier (http://faltin.net/temp/min.xls) der richtige download.
Vielen Dank für die Rückmeldung!


Viele Grüße,

Peter

jinx
06.07.2006, 05:07
<font size="2" face="Century Gothic">Moin, Peter,

wenn ich mir die Mappe im Projektexplorer ansehe, stellt Excel2002 eine Tabelle34 ohne Namen (aber mit den Eigenschaften von DieseArbeitsmappe) dar. Und darin könnte das verhalten erklärbar sein, denn meines Wissens sollte es die angegebene Klasse nur ienmal pro Arbetismappe geben.

Ab Excel2002 wurden zusätzliche "Features" eingeführt, die z.B. das Verhalten bei "korrupten" bzw. beschädigten Mappen beeinflussen.</font>

Peter Faltin
07.07.2006, 07:14
Hallo jinx,

vielen Dank für Deine schnelle Hilfe! Es ist tatsächlich so, dass in allen bisher kaputten Projekten genau diese Merkwürdige Kopie der Arbeitsmappe existiert. Damit ist die Wahrscheinlichkeit, dass das die Ursache ist sehr groß.

Leider habe ich es bisher nicht geschafft, dass Problem tatsächlich darauf zu reduzieren, da es offenbar nicht möglich ist diese Tabelle zu löschen, da sie sich wie das Workbook Objekt verhält. Hat jemand eine Idee, wie man die Tabelle löschen kann?

Hat jemand schon Erfahrung, wodurch eine solche Duplizierung entstehen kann? Ich habe bereits alle Aktionen die Tabellen kopieren mehrfach getestet, aber leider den Fehler nie reproduzieren können.

Danke!


cu

Peter

Peter Faltin
09.07.2006, 21:08
Habe das Problem inzwischen gelöst:
Excel 2000 mag es nicht, wenn während man Forms offen hat die Worksheetstruktur (neue Tabellen hinzufügt/löscht) ändert und dieses speichert ohne die Forms beendet zu haben.
Man muss also zum Speichern alle Forms schliessen und kann dann das Speichern (auch per VBA z.B. per Button in einer Tabelle) durchführen. Sonst wird die Exceldatei so beschädigt, dass sie unter Excel 2000 nicht mehr lauffähig ist.
Microsoft ist ein ähnlicher Bug bekannt, welcher seit SP2 gefixt wurde. Der oben beschriebene Bug tritt auch bei SP3 noch auf.

jinx
10.07.2006, 04:24
<font size="2" face="Century Gothic">Moin, Peter,

gibst Du bitte bei der nächsten eventuellen Fragestellung mit an, dass dieses Phänomen durch VBA / UserFormen hervorgerufen wird? Dies würde die Suche nach einer möglichen Ursache meiner Meinung nach erleichtern, weil nicht alle User Zugriff auf die Mappe und Kenntnis von den lokalen Gegebenheiten haben. Nein, habe ich nicht vermutet und auch nicht gewußt - um der Nachfrage vorzubeugen. ;)</font>