Display Alerts speichern

Hi,

wenn ich an meinen Dateien größere Änderungen vornehme verwende ich oft folgenden Excel-VBA-Code um das Programm zu beschleunigen.

**Sub Beispiel()

Application.ScreenUpdating = False
Application.DisplayAlerts = False

Programschritte

Application.ScreenUpdating = True
Application.DisplayAlerts = True

End Sub**

Nun würden mich die Fehlermeldungen aber doch interessieren. Es wäre super, wenn ich sie in eine Excelliste speichern könnte.

Hat jemand von euch einen Tip?

Beste Grüße

Max

Hallo Max,

zum Beschleunigen dient nur Screenupdating und auch nur
wenn der Code etwas ins Blatt schreib/verändert.
.DisplayAlerts unterdrückt nur Fehlermeldungen wie bei
Worksheets(1).Delete

Aber das sind andere Fehlermeldungen wie bei Codefehlern.

Schau mal hier:

Sub tt()
On Error GoTo hell
Worksheets(„Tabelle3“).Delete
Exit Sub
hell:
MsgBox „huhu“
End Sub

M.E. sind diese „Fehler“ nicht abfangbar, zumindest nicht einfach.
Ich ging von Standard aus, also Tabelle3 existiert.
Teste mal den Code mit
Worksheets(„Tabelle4711“).Delete
Das ist eine andere Fehlerart, die könntest du protokolieren.

Gruß
Reinhard

Dein Beispiel funktioniert. Mal schauen ob ich eine Lösung finde um die Alerts zu dokumentieren. Vielen Dank für die Antwort.

Gruß Max

Hallo Max,

Dein Beispiel funktioniert.

hatte es getestet, hätte es bei dir nicht funktioniert, naja,
hätten wir gemeinsam forschen müssen warum nicht.
Es sollt dir zeigen daß man m.W. in Codes nur die Fehler
abfangen/auswerten/protokollieren kann die echte „fehler“ sind.

Der Versuch Blatt4711 zu löschen löst einen solchen
Fehler aus.

Löschst du hingegen Blatt1 was existiert so löst das in Vba
keinen Fehler aus, warum auch.
Dieser Löschversuch löst etwas anderes aus, diese Alerts.

Mir gleich was das genau in deutsch bedeutet, ich übersetze
es für mich als Warnung (-shinweis), Sicherheitshinweis o.ä.
Der User muß da nochmals mit „Ja“ bestätigen daß er wirklich
Blatt1 löschen will mit allen Folgen daraus.

Mal schauen ob ich eine Lösung
finde um die Alerts zu dokumentieren.

Mein Tipp, genieße den schönen Tag und lass den Versuch weg.
Rein Theo Rettisch gesehen fällt mir ein Weg ein der gehen
KÖNNTE. Du startest einen API-Timer der alle x Millisekunden
alle „Fenster“ im gesamten Win überprüft.

Taucht ein Fenster auf was gemäß Fenstertitel und Fensterinhalt
so ein Alert sein könnte sokann man das schon protokollieren.

Ohne Lust das jetzt zu probieren bin ich recht sicher
ich krieg das mit Infosdurch Inernetrecherche hin daß
ich Code bastle der mir anzeigt wenn z.B. eine Word-instanz
gestartet wurde, denn deren „Fenster“ erkennt mein Code.

Betrüblich für dich ist, diese Alerts sind für API
kein Window, nichtmal ein Childwindow *glaub*, die kriegen
so Winzfensterchen nicht mit, damit der Code auch nicht.

Wie gesagt, lass es. Aber natürlich würde ich sehr gern
Code von dir sehen der es doch möglich macht die Alerts
aufzulisten. Ich glaube aber nicht daß ich den je sehen
werde, nicht wegen dir, nö, weil ich glaube mit Vba schafft
das keiner.

Klar, die in Redmont schon :smile:

Gruß
Reinhard