Absturz vom Speichern des VBA-Projeks

06/11/2008 - 20:09 von Christoph Schneegans | Report spam
Hallo allerseits!

In einer Datenbank (im Dateiformat 2002-2003) ist es mir nun schon zum
zweiten Mal passiert, daß sich Access 2003 (mit SP3) wàhrend des
Speicherns des VBA-Projekts unsanft verabschiedet. Die Datenbank ist
daraufhin beschàdigt und kann auch nicht mehr über repariert werden,
so daß ich sie aus einem Backup wiederherstellen muß.

Öfter noch passiert es, daß Access beim Kompilieren des VBA-Projekts
abstürzt; hier sind die Folgen allerdings weniger dramatisch, denn ich
verliere ja "nur" die Änderungen seit dem letzten Speichern. Ich lehne
mich aber vermutlich nicht allzu weit aus dem Fenster, wenn ich
vermute, daß beide Probleme dieselbe Ursache haben könnten, oder?

Gibt es anhand der beschriebenen Symptome geeignete Maßnahmen, die
nicht in <http://www.donkarl.com/FAQ/FAQ1Grun...m#1.27> erwàhnt
werden?

<http://schneegans.de/web/kanonische-adressen/> · Gute URLs
 

Lesen sie die antworten

#1 Henry Habermacher
07/11/2008 - 03:21 | Warnen spam
Hallo Christoph

Christoph Schneegans wrote:
In einer Datenbank (im Dateiformat 2002-2003) ist es mir nun schon zum
zweiten Mal passiert, daß sich Access 2003 (mit SP3) wàhrend des
Speicherns des VBA-Projekts unsanft verabschiedet. Die Datenbank ist
daraufhin beschàdigt und kann auch nicht mehr über repariert werden,
so daß ich sie aus einem Backup wiederherstellen muß.

Öfter noch passiert es, daß Access beim Kompilieren des VBA-Projekts
abstürzt; hier sind die Folgen allerdings weniger dramatisch, denn ich
verliere ja "nur" die Änderungen seit dem letzten Speichern. Ich lehne
mich aber vermutlich nicht allzu weit aus dem Fenster, wenn ich
vermute, daß beide Probleme dieselbe Ursache haben könnten, oder?

Gibt es anhand der beschriebenen Symptome geeignete Maßnahmen, die
nicht in <http://www.donkarl.com/FAQ/FAQ1Grun...m#1.27> erwàhnt
werden?



Die von mir aus geeignetste Massnahme ist ein regelmàssiger, vorsorglicher
Decompile.
Die hàufigste Ursache für VBA Korruptionen entsteht beim Debuggen und
gleichzeitiger Codeànderung. Wenn Du wàhrend dem Debuggen irgendwelchen VBA
Code ànderst, dann solltest Du Dir angewöhnen jeweils vor dem weiterfahren
(step-by-step oder über komplett) den VBA Code im VBA Editor vorgàngig zu
kompilieren und zu speichern.
Ein anderer Grund für koplett zerschossene VBA Projekte (vorallem gebundene
Klassenmodule) habe ich schon mehrfach beobachtet, wenn Objekte kopiert
werden. Wenn diese dann umbenannt werden wàhrend dessen Klassenmodul (also
Formular- oder Berichtsmodul) im VBA Editor veràndert und nicht gespeichert
wurde, dann kann es zu ebensolgen Fehlern führen. Hier empfiehlt es sich
dringenst den VBA Editor beim Kopieren von Objekten komplett zu schliessen,
dann Save zu klicken und alle Änderungen zu speichern. Danach kopieren und
umbenennen. Erst jetzt den VBA Editor wieder öffnen und dann das Projekt
kompilieren und speichern.

Aber eben, das sind nur Vorsichtsmassnahmen, welche die Gefahr von VBA
Korruptionen reduzieren, ausschliessen können diese diese Korruptionen
nicht. Es ist daher angebracht bei VBA Codierung hàufig backups der
Anwendung zu machen. Ich mache dabei jeweils gleich anschliessend einen
/Decompile /Compact, damit wieder alles sauber ist.

Gruss
Henry


Microsoft MVP Office Access
Keine E-Mails auf Postings in NGs. Danke.
Access FAQ www.donkarl.com

Ähnliche fragen