Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1188to1192
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

Aktueller Inhalt Statusbar an Variable zuweisen

Aktueller Inhalt Statusbar an Variable zuweisen
Peter
Guten Tag
Ich möchte den aktuellen Inhalt der Statusbar an eine Variable zuweisen, etwas anderes anzeigen und dann nach 1 Sekunde wieder den alten Inhalt bringen (resp. wenn nichts angezeigt wurde und wieder nichts zeigen).
Der jetzige Code bewirkt, dass am Ende in der Statusbar "FALSE" steht.
Was mus sich ändern?
Danke und Gruss, Peter
Sub SwitchEnableEvents()
Dim strStatusBisher As String
strStatusBisher = Application.StatusBar
Select Case Application.EnableEvents
Case True
Application.EnableEvents = False
Application.StatusBar = "EnableEvents ausgeschaltet"
Wait 1000
Application.StatusBar = strStatusBisher
Case False
Application.EnableEvents = True
Application.StatusBar = "EnableEvents eingeschaltet"
Wait 1000
Application.StatusBar = strStatusBisher
End Select
End Sub

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Aktueller Inhalt Statusbar an Variable zuweisen
08.12.2010 11:46:37
Renee
Hi Peter,
Die Application.StatusBar innerhalb des Select Case rausschmeissen.
Nach dem End Select
Application.StatusBar = IIf(strStatusBisher = "FALSE", False, strStatusBisher)

GreetZ Renée
AW: Aktueller Inhalt Statusbar an Variable zuweisen
08.12.2010 13:35:26
Peter
Hallo Renée
Das hat geklappt, vielen Dank. Allerdings musste ich anstelle von
Application.StatusBar = IIf(strStatusBisher = "FALSE", False, strStatusBisher)
leicht modifiziert schreiben
Application.StatusBar = IIf(strStatusBisher = "FALSCH", False, strStatusBisher)
Weshalb da in der VBA-Umgebung auf einmal ein deutscher Begriff verlangt wird, war mir nicht ganz klar, doch Hauptsache, es funktioniert.
Gruss, Peter
Anzeige
Deshalb FALSCH statt FALSE...
08.12.2010 13:49:44
Renee
Peter,
weil hier ein 'Pseudo'-Boolean Wert in einen 'sprachabhängigen' String gewandelt wird.
um sicher zu gehen, dass es auch in einer multi-language Version (zumindest dt/en) von Excel funktioniert könntest du schreiben:
Application.StatusBar = IIf(strStatusBisher = "FALSE" or strStatusBisher = "FALSCH", False, strStatusBisher)
Greetz Renée
AW: Deshalb FALSCH statt FALSE...
08.12.2010 14:05:26
Peter
Hallo Renée
Danke für die Erklärung und die multi-language Version. Echt hilfreich!
Gruss, Peter
AW: Deshalb FALSCH statt FALSE...
08.12.2010 14:46:48
Peter
Hallo Renée
Irgendwie habe ich mich doch nochmals getäuscht. Die Variante, die funktioniert ist:
Application.StatusBar = IIf(strStatusBisher = False, "", strStatusBisher)
Könnte wohl in einer englischen Version auch laufen ?
Gruss, Peter
Sub SwitchEnableEvents()
Dim strStatusBisher As String
strStatusBisher = Application.StatusBar
Select Case Application.EnableEvents
Case True
Application.EnableEvents = False
Application.StatusBar = "EnableEvents ausgeschaltet"
Case False
Application.EnableEvents = True
Application.StatusBar = "EnableEvents eingeschaltet"
End Select
With Application
.Wait .Wait(Now + TimeValue("0:00:01"))
End With
Application.StatusBar = IIf(strStatusBisher = False, "", strStatusBisher)
End Sub

Anzeige
Inwiefern getäuscht?
08.12.2010 16:07:18
Renee
Hi Peter,
Gab den das andere ein Fehler ?
Das sollte eigentlich funktionieren:
Sub SwitchEnableEvents()
Dim vStatusBisher
With Application
vStatusBisher = .StatusBar
.StatusBar = "EnableEvents " & IIf(.EnableEvents, "aus", "ein") & "geschaltet"
.EnableEvents = Not (.EnableEvents)
.Wait Now + TimeSerial(0, 0, 1)
.StatusBar = IIf(vStatusBisher = False, False, vStatusBisher)
End With
End Sub

GreetZ Renée
AW: Inwiefern getäuscht?
08.12.2010 17:10:40
Peter
Hallo Renée
Ja, das funktioniert!
Vielen Dank, Peter

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige