Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

BeforeUpdate funktioniert nicht!

Forumthread: BeforeUpdate funktioniert nicht!

BeforeUpdate funktioniert nicht!
Knatterkopf
Hallo Liebe Proffesionals,
ich habe hier alles durchstöbert und raufe mir immer noch die Haare. Vorallem in dem Post https://www.herber.de/forum/archiv/140to144/t143076.htm steht die eigentliche Lsg. Nur bei mir will es nicht laufen und ich weiß zum Teufel nicht warum!!
Folgendes:
Meine Textbox will dieses Event nicht fressen! Was ich will geht aus dem Code hervor!
Kurz: Wenn das Datum nicht stimmt und man das Feld verlässt, so soll geschumpfen werden.
Private Sub TextBox1_BeforeUpdate(ByVal cancel As MSForms.ReturnBoolean)
Dim strDate As String
With Me.TextBox1
strDate = .Value
If IsDate(strDate) Then
If Not strDate = Format(strDate, "dd.mm.yyyy") Then
.SelStart = 0
.SelLength = Len(Text)
MsgBox "Bitte einen korrekten Datumswert eingeben! Format: dd.mm.yyyy"
cancel = True
End If
Else
MsgBox "Bitte einen korrekten Datumswert eingeben! Format: dd.mm.yyyy"
.SelStart = 0
.SelLength = Len(Text)
cancel = True
End If
End With
End Sub

Bestimmt weiß einer von euch Rat und Tat!
Viele Grüße
Adrian
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: BeforeUpdate funktioniert nicht!
26.04.2011 16:15:17
Hajo_Zi
Hallo Adrian,
Du hast schon mehr als dieses eine Steuerelement?

AW: BeforeUpdate funktioniert nicht!
27.04.2011 09:44:50
Knatterkopf
Hi, ja habe ich.
Vier Kombiboxen, aber nur diese Textbox.
In 2 Boxen sind nur fixe Werte drin (0 bis 5).
Ich möchte das Datum später als Suchfunktion (Filter) nutzen.
Dabei soll das Filterkriterium am Ende der Zeitraum (0 bis 5) Wochen vor Datum bis (0 bis 5) Wochen nach Datum sein. Bei 0 vor und 0 nach ist es eben nur das Datum.
Ich hänge Momentan erst mal an der Befüllung dieser Textbox =(
Lg und Danke dir!
Adrian
Anzeige
AW: BeforeUpdate funktioniert nicht!
27.04.2011 10:59:54
Rudi
Hallo,
da fehlt 2x ein .!
.SelLength = Len(.Text)
Gruß
Rudi
Ich würd das so machen:
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
If InStr(TextBox1, ".") Or InStr(TextBox1, "-") Or InStr(TextBox1, "/") Then
TextBox1 = CDate(TextBox1)
Else
MsgBox "Bitte einen korrekten Datumswert eingeben! Format: dd.mm.yyyy"
With TextBox1
.SelStart = 0
.SelLength = Len(.Text)
End With
Cancel = True
End If
End Sub
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'Nur Ziffern 0-9 und .-/ erlaubt
Select Case KeyAscii
Case 45 To 57
Case Else: KeyAscii = 0
End Select
End Sub

Anzeige
AW: BeforeUpdate funktioniert nicht!
27.04.2011 11:24:28
Knatterkopf
Hallo Rudi, danke für die Antwort,
stellt das auch sicher, dass das Format genau so "dd.mm.yyyy" ist und nicht z.B. d.mm.yy" ?
Wenn ja, dann pack ichs gleich ein =)
Das witzige ist nur, dass die TB sich nicht dem Code zuordnen lässt!! *damn*
Sprich Doppelclick im DesignModus auf die TB und im Code wird ein neues change-Ereignis generiert, anstatt in den Code zu springen =(( *what the hell?*
Habe auch schon 5 mal überprüft ob ich TextBox1 richtig geschrieben hatte > Lg
Adrian
Anzeige
stellt das auch sicher...
27.04.2011 11:51:44
Rudi
Hallo,
das hängt an der Systemeinstellung 'kurzes Datum'.
Das witzige ist nur, dass die TB sich nicht dem Code zuordnen lässt!! *damn*
Kann ich nicht nachvollziehen. Code in die UF kopiert?
Gruß
Rudi
AW: stellt das auch sicher...
27.04.2011 15:56:03
Knatterkopf
Hallo Rude,
nein. Der Code ist in Tabelle1(XY)
Ich versteh es auch nicht!
Lg
Adrian
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige