1. Schritte bei einer User-Form

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

Betrifft: 1. Schritte bei einer User-Form von: Klaus
Geschrieben am: 04.02.2005 17:11:42

Hallo Leute,

ich mache gerade meine ersten Gehversuche beim Erstellen einer User-Form.
Das Erstellen der User-Form ist nicht das Problem, aber wie verarbeite ich die Werte, die der Anwender über ein Textfeld eingibt?
In der 'alten' Welt wurde der Wert per Formel einer Zelle zugewiesen, wie funktioniert es in der 'neuen' Welt.

Antworten oder Beispiele bitte, bitte einfach halten, sonst verstehe ich nur Bahnhof.

Schon einmal vielen Dank.

Bild


Betrifft: AW: 1. Schritte bei einer User-Form von: Josef Ehrensberger
Geschrieben am: 04.02.2005 17:15:16

Hallo Klaus!

Angenommen du hast ein UF mit einer TextBox und einem CommandButton.

Beim Klick auf den Button soll der Text aus der TextBox in Zelle "A1"
geschrieben werden

Private Sub CommandButton1_Click()
Range("A1") = TextBox1
End Sub



Gruß Sepp

P.S.: Rückmeldung nicht vergessen!


Bild


Betrifft: AW: 1. Schritte bei einer User-Form von: Klaus
Geschrieben am: 04.02.2005 17:32:11

Hallo Sepp,

das hat super geklappt und ich dachte, das ist ja einfach.

Ich habe nun versucht, den Wert aus einer ListBox, die sich auch in der UF befindet, auf die gleiche Weise zu vewerten. Doch das hat nicht geklappt.

Besteht außerdem die Möglichkeit, dass die TextBox formatiert werden kann, z.B. dass der Anwender im Eingabefeld sehen kann, das es sich bei einer Eingabe von 5000 um einen Wert von 5.000 EUR handelt.

Gruß klaus


Bild


Betrifft: AW: 1. Schritte bei einer User-Form von: Josef Ehrensberger
Geschrieben am: 04.02.2005 17:47:29

Hallo Klaus!

Einfach zB. so:

Private Sub CommandButton1_Click()
Range("B1") = CDbl(TextBox1)
Range("B2") = ListBox1
End Sub
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1 <> "" Then
TextBox1 = Format(TextBox1, "#,##0.00")
End If
End Sub

Bei Zahlenwerten muss man die Werte aus Text- List- oder Comboboxen
immer umwandeln, weil der Inhalt "Text" ist.

Gruß Sepp

P.S.: Rückmeldung nicht vergessen!


Bild


Betrifft: AW: 1. Schritte bei einer User-Form von: Klaus
Geschrieben am: 04.02.2005 18:02:38

Hallo Sepp,

ich bewege mich in dem Forum heute das 1. Mal, kenne mich noch nicht mit den Gepflogenheiten aus und wußte nicht, ob Du meine Antworten mitbekommst.

Es klappt bisher alles wunderbar. Das hilft mir echt wieter!
Nur eins noch.
Wie kann ich das Eingabefeld zusätzlich mit einem Währungszeichen formatieren?
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1 <> "" Then
TextBox1 = Format(TextBox1, "#,##0.00")
End If
End Sub


Gruß
Klaus


Bild


Betrifft: AW: 1. Schritte bei einer User-Form von: Josef Ehrensberger
Geschrieben am: 04.02.2005 18:20:32

Hallo Klaus!

Dann muss man aber auch beim umwandeln das € wieder entfernen!

TextBox1 = Format(TextBox1, "€ #,##0.00")
'-
Range("B1") = CDbl(Replace(TextBox1, "€ ", ""))


Gruß Sepp

P.S.: Rückmeldung nicht vergessen!


Bild


Betrifft: AW: 1. Schritte bei einer User-Form von: Klaus
Geschrieben am: 04.02.2005 18:41:50

Hallo Sepp,

ich habe jetzt ein 2. Textfeld eingebaut. Dieses Textfeld wird beim Ausführen mit der Tab-Taste aber nicht angesprungen. Warum? Gibt es dafür einen Grund? habe ich was vergessen?

Private Sub CommandButton1_Click()
Range("A1") = CDbl(TextBox1)
Range("B1") = CDbl(TextBox2)
Range("C1") = ListBox1
Hide
End Sub




Private Sub MultiPage1_Change()
End Sub


Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1 <> "" Then
TextBox1 = Format(TextBox1, "#,##0.00")
End If
End Sub


Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox2 <> "" Then
TextBox2 = Format(TextBox2, "€ #,##0.00")
End If
End Sub



Gruß Klaus


 Bild

Beiträge aus den Excel-Beispielen zum Thema "1. Schritte bei einer User-Form"