Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
368to372
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
368to372
368to372
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Userform und autom. Prüfungen

Userform und autom. Prüfungen
24.01.2004 17:56:43
Günther Nebel
In der unten aufgeführten Userform habe ich in Textbox1 und Textbox4 jeweils
eine Datumseingabe und in Textbox8 und Textbox9 eine Uhrzeiteingabe.
FRAGE:
Wie kann ich erreichen, daß bei der Eingabe zwingend ein 8-stelliges Datum
(23.12.03) und die Uhrzeit ohne Doppelpunkt (13:45) eigegeben werden kann, aber dann alles geprüft wird, bzw. umgewandelt wird.
Und ist es generell möglich eine Abfrage zu erstellen, die prüft, ob alle
Textboxen befüllt wurden, bevor der Speichern-Button gedrückt werden kann?

Private Sub CommandButton2_Click()
'Daten speichern
Dim frm As UserForm
Dim TextBox1 As Date
Set frm = UserForm1
Sheets("Transportdaten").Activate
ActiveSheet.Unprotect password:="transporT"
Range("A65536").End(xlUp).Offset(1, 0).Select
'Unload.UserForm1
With frm
ActiveCell.Value = .TextBox1.Value
ActiveCell.Offset(0, 1).Value = .TextBox2.Value
ActiveCell.Offset(0, 2).Value = .TextBox3.Value
ActiveCell.Offset(0, 3).Value = .TextBox4.Value ' siehe Textbox1
ActiveCell.Offset(0, 5).Value = .TextBox5.Value
ActiveCell.Offset(0, 6).Value = .TextBox6.Value
ActiveCell.Offset(0, 7).Value = .TextBox7.Value
ActiveCell.Offset(0, 8).Value = .TextBox8.Value 'die Zeit soll geprüft
werden, ob mit Doppelpunkt erfasst wurde
ActiveCell.Offset(0, 9).Value = .TextBox9.Value ' siehe Textbox8
ActiveCell.Offset(0, 10).Value = .TextBox10.Value
ActiveCell.Offset(0, 11).Value = .TextBox11.Value
If .OptionButton1.Value = True Then
ActiveCell.Offset(0, 4).Value = "Maier"
Else
If .OptionButton2.Value = True Then
ActiveCell.Offset(0, 4).Value = "Huber"
Else
If .OptionButton3.Value = True Then
ActiveCell.Offset(0, 4).Value = "Selb"
Else
If .OptionButton4.Value = True Then
ActiveCell.Offset(0, 4).Value = "Achatz"
Else
If .OptionButton5.Value = True Then
ActiveCell.Offset(0, 4).Value = "Gruber"
End If
End If
End If
End If
End If
.TextBox1.Value = ""
.TextBox2.Value = ""
.OptionButton1 = False
.OptionButton2 = False
.OptionButton3 = False
.OptionButton4 = False
.OptionButton5 = False
.TextBox3.Value = ""
.TextBox4.Value = ""
.TextBox5.Value = ""
.TextBox6.Value = ""
.TextBox7.Value = ""
.TextBox8.Value = ""
.TextBox9.Value = ""
.TextBox10.Value = ""
.TextBox11.Value = ""
End With
ActiveSheet.Protect password:="transporT"
Sheets("Transportstartseite").Activate
UserForm1.Hide
End Sub

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Userform und autom. Prüfungen
24.01.2004 18:03:57
Gorginio
Hi
wenn du nur die textbox1 in den name deines Textfeldes aenderst, sollte das code schnipsel bei dir funktionieren:

Private Sub textbox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
'Date Format Validation
With Me.textbox1    If Not IsDate(.Text) Then
.Text = ""
MsgBox "Please enter a valid date!"
Cancel = True
Else
On Error Resume Next
.Text = CDate(.Text)
End If
End With
End Sub


LG Gorginio
AW: Userform und autom. Prüfungen
24.01.2004 18:11:50
Gorginio
Hi,
Also wahrscheinlich probierst gerade das Codeschnipsel aus.
Kurze Erlaeuterung:
Mit
public textbox1() <-- da musst du ein " _exit" einfuegen.
Damit wird es dann unmoeglich die textbox zu verlassen ohne ein datum einzugeben. ( IsDate macht das), funktioniert mit IsTime glaub ich auch.
Ueberpruefungen solltest du immer in den cmdbutton "Senden" legen.
uebrigens empfehle ich dir mal bei
http://www.hrz.uni-dortmund.de/S1/download/skripte/s3/excel/excel_formular_vba.pdf
vorbeizuschauen, denn da sehen die grundlegenden Eigenschaften von Userforms drinnen.
LG Gorginio
Anzeige
AW: Userform und autom. Prüfungen
24.01.2004 18:27:46
Günther Nebel
Hi Giorgino!
Super Sache, die funktioniert echt so wie ich meine.
Muß ich also nur noch die Werte in die Zellen übertragen mit der OK-Schaltfläche, aber das sollte ich schaffen.
Danke vielmals, echt

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige