Im November 2022 war es mal wieder soweit: Microsoft hat ein neues Update (glücklicherweise nur für den Betakanal) herausgegeben, der einen kritischen Fehler auslöste. Beim Bearbeiten oder Anlegen eines Datensatzes über ein Recordset stürzte Access ohne weitere Rückmeldung ab. Die Lösungen für diese Problem waren, solche Bearbeitungen durch alternative Techniken zu ersetzen oder aber das Update rückgängig zu machen. Letztere Alternative beschreiben wir in diesem Beitrag, damit Sie zukünftig eine schnelle Lösung zur Hand haben.
Wenn man feststellt, dass nach einem Update etwas nicht mehr so läuft wie gewünscht, ist die Wahrscheinlichkeit hoch, dass es etwas mit diesem Update zu tun hat. In diesem Fall provozierte folgender Code einen Absturz von Access, und zwar in der vorletzten Zeile:
Dim db As DAO.Database Dim rst As DAO.Recordset Set db = CurrentDb Set rst = db.OpenRecordset("SELECT * FROM Tabelle1", _ dbOpenDynaset) rst.AddNew rst!Feld1 = "Test" rst.Update
Update rückgängig machen
Wenn man eine Ahnung hat, dass dieses Verhalten durch ein Update ausgelöst wurde, gibt es die Möglichkeit, dieses zurückzusetzen. Dazu haben wir zwei Wege:
Der erste führt über die Wiederherstellungs-Funktion der Systemsteuerung. Diese hat bei mir in diesem Fall funktioniert. Allerdings muss man beachten, dass hier auch andere Änderungen am System rückgängig gemacht werden, die seit dem angestrebten Wiederherstellungspunkt durchgeführt wurden.
Diese Variante würde ich also nur wählen, wenn die zweite, nachfolgend vorgestellte Variante nicht funktioniert. Anleitungen zur Wiederherstellung über die Systemsteuerung finden sich im Internet.
Die zweite Variante ist das gezielte Zurücksetzen der Office-Version. Dazu muss man herausfinden, welche Version aktuell vorliegt und den Fehler verursacht und dann ermitteln, welche Version die vorherige ist. Wie das gelingt, zeigen wir in den folgenden Abschnitten.
Wiederherzustellende Office-Version ermitteln
Um die Office-Version rückgängig zu machen und die dazu benötigte Versionsnummer zu ermitteln, öffnen wir beispielsweise unter Access zuerst den Bereich Datei|Konto.
Hier sehen wir rechts unten den Bereich Info zu Access, wo wir die Version ablesen können. Die problembehaftete Version lautete in diesem Fall Version 2211 (Build 16.0.15831.20002 Klick-und-Los).
In Bild 1 sehen wir bereits die Versionsnummer nach dem Zurücksetzen. Wichtig ist auch die Information, dass es sich hier um den Betakanal handelt.
Bild 1: Ermitteln der aktuellen Version
Um zu einer vorherigen Version von Office zurückzukehren, benötigen wir die genaue Angabe der wiederherzustellenden Version, also beispielsweise 16.0.15822.20000. Wie finden wir die gesuchte Version heraus? Hier greifen wir nun doch auf die Systemwiederherstellung zu, denn diese enthält die gesuchten Informationen.
Um die Systemwiederherstellung zu starten, geben wir im Suchen-Feld von Windows den Begriff Wiederherstellung ein und wählen den nun erscheinenden Eintrag Wiederherstellung aus. Dies öffnet das Hauptmenü für die Wiederherstellung. Hier klicken Sie auf den Link Systemwiederherstellung öffnen. Danach erscheint der Dialog aus Bild 2.
Bild 2: Anzeige anderer Wiederherstellungspunkte
Hier klicken wir zunächst auf den Link Nach betroffenen Programmen suchen. Dies öffnet einen Dialog wie den aus Bild 3. Gegebenenfalls finden wir hier im unteren Bereich der wiederherzustellenden Programme schon eine frühere Version von Office. Ist deren Versionsnummer kleiner als die aktuell vorhandene, notieren wir diese für später.
Bild 3: Versionen, die durch diese Wiederherstellung wiederhergestellt werden
Enthalten die Wiederherstellungsinformationen in diesem Dialog nicht die gewünschten Informationen, schließen wir den Dialog und wählen im vorherigen Dialog mit der Überschrift Systemdateien und -einstellungen wiederherstellen die Option Anderen Wiederherstellungspunkt auswählen aus. Nun erscheint der Dialog Wiederherstellung des Computerzustands zum angegebenen Zeitpunkt aus Bild 4. Hier können wir einen der vorhandenen Einträge selektieren und wieder mit einem Klick auf Nach betroffenen Programmen suchen die Auflistung der wiederherzustellenden Elemente anzeigen.
Bild 4: Auswahl der Wiederherstellungspunkte
Office-Version wiederherstellen
Zum Wiederherstellen der Office-Version benötigen wir die Eingabeaufforderung von Windows, und zwar im Administratormodus.
Dazu geben wir im Suchen-Feld von Windows den Ausdruck cmd ein und klicken den nun erscheinenden Eintrag Eingabeaufforderung mit der rechten Maustaste an. Das Kontextmenü bietet nun den Befehl Als Administrator ausführen an. Dieser öffnet die Eingabeaufforderung im Administratormodus.
Über den folgenden Befehl wechseln wir nun zum Verzeichnis ClickToRun:
cd %programfiles%\Common Files\Microsoft Shared\ClickToRun
Hier setzen wir den entscheidenden Befehl ab, der die Versionsnummer der wiederherzustellenden Office-Version enthält:
OfficeC2RClient.exe /update user updatetoversion=16.0.15822.20000
Dies startet einen herkömmlichen Office-Installationsvorgang, der die gewünschte Office-Version wiederherstellt.
Wenn Sie unnötige Wartezeiten vermeiden wollen, schließen Sie vorher alle noch geöffneten Office-Anwendungen.
Nach dem Installieren sollte der durch das Update ausgelöste Fehler nicht mehr auftreten.
Automatische Updates deaktivieren
Im vorliegenden Fall habe ich zu Testzwecken die automatische Aktualisierung von Office nicht deaktiviert. Das Ergebnis war ernüchternd: Microsoft hat mir zwar nicht nochmal die gleiche fehlerhafte Office-Version auf den Rechner geschickt, sondern eine noch neuere Version. Allerdings brachte diese ebenfalls den oben beschriebenen Fehler wieder mit.
Wie kann ich nun dafür sorgen, dass Office nicht weiterhin automatisch aktualisiert wird? Dazu gibt es eine Option, die sich wiederum im Bereich Datei|Konto befindet. Hier finden wir wie in Bild 5 die Schaltfläche Updateoptionen, die beim Anklicken zum Beispiel den Befehl Updates deaktivieren mit sich bringt.
Bild 5: Deaktivieren von automatischen Updates
Wenn wir diesen betätigen, ändert sich die Ansicht in diesem Bereich wie in Bild 6. Office wird nun nicht mehr automatisch aktualisiert.
Bild 6: Automatische Updates wurden deaktiviert.
Tritt ein Bug wie der oben genannte auf und Sie haben die Office-Version erfolgreich so zurückgesetzt, dass dieser verschwindet, sollten Sie automatische Updates solange deaktivieren, bis es aus der Community Feedback darüber gibt, ob der Bug behoben wurde.
Zusammenfassung und Ausblick
Der hier beschriebene Bug wurde offensichtlich nur mit der Beta-Version ausgeliefert – sonst hätte es vermutlich einen größeren Aufschrei gegeben. Hier ist zu hoffen, dass Microsoft den Fehler behebt, bevor er es aus der Beta-Version in die offizielle Version schafft und so größere Probleme anrichtet – vor allem, weil das Wiederherstellen früherer Versionen in größeren Unternehmen schwieriger sein dürfte als auf einem Entwicklerrechner.
Downloads zu diesem Beitrag
Enthaltene Beispieldateien:
FehlerhafteAccessOfficeUpdatesRueckgaengigMachen.accdb