Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1448to1452
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

globale Boolesche Variable

globale Boolesche Variable
24.09.2015 09:07:09
r2d2
Hallo,
um beim Öffnen einer Excel-Datei mit der Shift-Taste auch alle anderen Makros zu deaktivieren, möchte ich das ganze über eine globale Boolsche Variable steuern.
Hierzu setze ich den Wert im Workbook_Open event auf WAHR.
Nun frage ich vor dem Ausführen eines Makros jedesmal ab, ob die Variable WAHR ist.
Ist sie nicht WAHR (immer dann wenn jemand die Datei mit gedrückter Shift-Taste öffnet) werden die Makros nicht ausgeführt.
Nun kann der Wert aber auch FALSCH sein, wenn (wodurch auch immer) ein Makro auf einen Fehler läuft. In dem Fall würde danach kein weiteres Makro mehr ausführbar sein und man müsste die Datei neu öffnen.
Wie kann ich das nun wieder abfangen, das der Wert der Variablen durch so einen Fall eben nicht auf FALSCH gesetzt wird?
Danke.
Gruß
r2d2

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: globale Boolesche Variable
24.09.2015 09:47:59
ChrisL
Hi
Wenn das Makro auf einen Fehler läuft, solltest du eine ordentliche Fehlerbehandlung machen, so dass die Variable immer richtig gesetzt ist.
Mal googlen z.B.
http://www.online-excel.de/excel/singsel_vba.php?f=145
cu
Chris

AW: globale Boolesche Variable - Fehlerbehandlung
24.09.2015 09:51:31
fcs
Hallo r2d2,
dann musst du in deine Makros eine Fehlerbehandlung einbauen, die einen kontrollierten Ausstieg aus dem Makro ermöglicht.
Generell solltest du natürlich versuchen, die möglichen Fehler gezielt abzufangen und entsprechend den weiteren Makro-Ablauf steuern.
Nachfolgend, die Basis für solch eine Fehlerbehandlung.
Gruß
Franz
Sub Test()
If pbolAusfuehren = False Then Exit Sub
On Error GoTo Fehler
'hier der Code der ausgeführt werden soll
'Fehlerbehandlung
Err.Clear 'räumt mitgecschleppte Fehler auf
Fehler:
With Err
Select Case .Number
Case 0 'alles OK
Case Else
MsgBox "Fehler-Nr.: " & .Number & vbLf & .Description & vbLf & vbLf _
& "Mehr Glück beim nächsten mal"
End Select
End With
'Hier dann ggf. noch bestimmte Einstellungen zurücksetzen und Variablen aufräumen
With Application
.ScreenUpdating = True
.EnableEvents = True
.Calculation = xlCalculationAutomatic
End With
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige