Herbers Excel-Forum - das Archiv

Aktion abhängig von Textfeld ausführen

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Aktion abhängig von Textfeld ausführen
von: Scotty
Geschrieben am: 30.09.2003 12:00:49
Hallo alle zusammen,

habe eine multipage mit 5 Registern. Im ersten Register ist eine Textbox, in der ein Datum eigegeben wird und anschließend verschiedene Dinge ausgeführt werden. Jetzt mein Prob. Ich möchte, dass sich das zweite Register nur öffnet, wenn in der Textbox des ersten Registers ein Datum steht.

Scotty

Bild

Betrifft: AW: Aktion abhängig von Textfeld ausführen
von: Andi_H
Geschrieben am: 30.09.2003 12:47:04
Hi Scotty,

mal so als prüfungsansatz bei wechsel der multipage

If IsDate(TextBox1.Text) Then
MsgBox ("ja")
Else
MsgBox ("nein")
End If

Gruß

Andi
Bild

Betrifft: Schon ganz gut!
von: Scotty
Geschrieben am: 30.09.2003 13:01:42
Hi Andi,

danke für deine schnelle Antwort. Ansich ist das schon der richtige Weg. ABER: Hab mich vorhin vielleicht etwas mißverständlich ausgedrückt. Momentan ist es so, das generell bei der Eingabe eines Datums auf das zweite Register gewechselt wird. Es sollte aber besser so sein, das ich das Datum eingebe, normal alles andere auf der ersten Seite ausführen kann und erst wenn ich auf das zweite Register klicke, wird geprüft, ob ein Datum im Textfeld steht und wenn nicht wird über MsgBox ein Hinweis ausgegeben und auf Register eins gesprungen.
Bild

Betrifft: AW: Schon ganz gut!
von: Andi_H
Geschrieben am: 30.09.2003 13:11:38
Hi Scotty,

hab leider sehr wenig mit Multipages am Hut, aber so sollte es klappen:
in die Userform einfügen: (um immer bei aufruf Multipage1 zu erhalten)

Private Sub UserForm_Initialize()
MultiPage1.Value = 0
End Sub


' MPwehcsel nur möglich wenn textbox mit datum gefüllt ist.
Private Sub MultiPage1_Click(ByVal Index As Long)
If Not IsDate(TextBox1.Text) Then
MultiPage1.Value = 0
MsgBox ("wechsel nicht möglich")
End If
End Sub


Hilft dir das weiter?

Gruß

ANdi
Bild

Betrifft: Danke, das hat weitergeholfen!
von: Scotty
Geschrieben am: 30.09.2003 13:44:47
Hi Andi,

du hast mich auf den richtigen Weg gebracht. Dankeschön. Das einzige Prob. was ich noch hatte war, das auch beim Register 3, 4, 5... die Meldung erschienen ist. Möchte die Meldung aber nur beim Register 2. Habe das so gelöst: (Schau dir doch bitte mal den Code an. Hab nicht wirklich Ahnung von Vb. Der Code funzt zwar, vielleicht geht es aber eleganter.)

Private Sub MultiPage1_Change()
If MultiPage1.Value = 1 Then
If Not IsDate(Berechnungsdatum.Text) Then
MultiPage1.Value = 0
MsgBox ("Bitte erst Datum eingeben!")
End If
End If
End Sub


Danke Dir!!!!
Scotty
Bild

Betrifft: Optimal
von: Andi_H
Geschrieben am: 30.09.2003 13:59:23
Hi Scotty,

also ich würde sagen der Code paßt so, ich weiß zumindest keine elegantere Lösung mehr. Aber so wie ich das sehe funktioniert der Code fehlerfrei und darauf kommts ja an.

Viel Spaß noch und Grüße

Andi
Bild

Betrifft: Nochmal Danke
von: Scotty
Geschrieben am: 30.09.2003 14:05:01
Hi Andi,

danke nochmal für's schauen! Sag mal, gibt es irgendwo im Netz, z. B. als pdf-Datei ein schönes dickes Buch über Excel und Vba. Bin zwar nicht mehr ganz so blöd, was Excel und Vba angeht, würde mich aber gerne noch mehr auf diesem Gebiet weiterbilden.

Schönen Nachmittag noch...
Scotty
Bild

Betrifft: AW: Nochmal Danke
von: Andi_H
Geschrieben am: 30.09.2003 15:27:29
als PDF im Netz weiß ich leider auch nichts, hab zwar einiges auf meinem Rechner, weiß aber nicht mehr woher . Frag einfach mal hier im Forum, da erhält man einige gute Tips. Oder schau mal auf die Profile hier, einige Antworter haben einen Link zu Ihrer Homepage drin und da findet man auch einiges Interessantes.
Sehr empfehlenswert ist die CD von Hans hier im Forum

Gruß

ANdi
Bild

Betrifft: Danke
von: Scotty
Geschrieben am: 01.10.2003 08:19:23
Danke dir Andi!

Gruß Scotty
 Bild
Excel-Beispiele zum Thema " Aktion abhängig von Textfeld ausführen"
Makroaktion über die UnDo-Schaltfläche zurücknehmen Aktion nach Auswahl in Gültigkeitsliste
Zeilen-Aktionen bei Doppelklick VBA-Aktion über "Rückgängig"-Schaltfläche zurücksetzen
Freiraum am linken Rand von MS-FORMS-Textfeldern löschen Datumseingabe in Textfeld erzwingen
Textfelder in UserForm beim Start vorbelegen Werte aus einer UserForm-Textfeld-Serie in Arbeitsblatt
Im Textfeld nur Eingabe von 2 Ziffern zulassen, dann zum nächsten Bei Verlassen eines Textfeldes Prüfung, ob Datumseintrag