Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1852to1856
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

Tabstrip - Event VOR Change

Tabstrip - Event VOR Change
21.10.2021 18:14:59
Andreas
Hallo alle zusammen,
ich habe in einem anderen Thread schon diskutiert, leider haben wir kein Ergebnis gefunden:
Gibt es eine Möglichkeit innerhalb eines Tabstrip vor dem TabStrip1_Change-Ereignisses etwas auslösen zu lassen. Soll heißen:
Ich bin auf Tab0 und möchte auf Tab1 wechseln. Jetzt soll er VORHER prüfen, ob ich zb eineTextbox ausgefüllt habe. ... und erst dann das Tab wechseln.
Wenn das Tab gewechselt wurde, und erst dann die Prüfung erfolgt, ist es bereits zu spät.
Habe leider nur das Change Ereignis gefunden, click hat mich auch nicht so wirklich weiter gebracht.
Jemand vielleicht noch eine Idee, wie man das Lösen könnte? Wäre super, wenn jemand nen Lösungsvorschlag hat.
Sowas wie BeforeChange/ BeforeUpdate oder sowas gibts da ja alles bei Tabs nicht...
Meine Ideen die ich bisher versucht habe umzusetzen, waren vl sowas wie das Change solange zu unterdrücken ?!
Bin um jede Idee dankbar.

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

Betreff
Datum
Anwender
Anzeige
AW: Tabstrip - Event VOR Change
21.10.2021 18:42:11
Daniel
HI
probiers mal mit MouseDown + MouseUp (und wenn die Anwender mit Tastatur arbeiten, auch mit KeyDown + KeyUp

Option Explicit
Dim alterStrip As Long
Private Sub TabStrip1_MouseDown(ByVal Index As Long, ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
alterStrip = TabStrip1.Value
End Sub
Private Sub TabStrip1_MouseUp(ByVal Index As Long, ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If TabStrip1.Value  alterStrip Then
If Textbox1.Value = "" Then
MsgBox "Bitte erst Textbox1 ausfüllen"
TabStrip1.Value = alterStrip
Else
MsgBox "hier geht dann die Bearbeitung weiter"
End If
End If
End Sub
im MouseDown merkst du dir den alten Strip
im MouseUp (anstelle des Changeevents) prüfst du dann zuerst, ob überhaupt der Strip gewechselt wurde (also der Change-Fall eingetreten ist) und dann, ob die Bedingungen erfüllt sind (Textbox ausgefüllt)
Wenn nein, wechselst du einfach auf den alten Strip zurück, ohne was zu tun.
Wenn ja, machst du mit der Bearbeitung weiter.
Gruß Daniel
Anzeige
AW: Tabstrip - Event VOR Change
22.10.2021 09:58:54
Andreas
Hey Daniel,
das war die Lösung mit dem MouseDown... Damit kann ich weiterarbeiten. Vielen Dank für deine Bemühungen.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige