Registriert seit: 15.12.2016
Version(en): 2013
Hallo liebes Forum,
ich brauche kurz eure Hilfe bzgl. eines Codes in Userform:
Mit folgendem Code hole ich mir die Werte der Textboxen entsprechend der Combobox.
Code:
Private Sub ComboBox1_Change()
Dim ZelleAE As Range
Set ZelleAE = Sheets("Artikel").Range("B4:F400").Find(What:=Me.ComboBox1.Value, LookIn:=xlFormulas, LookAt:=xlPart, _
SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False)
Me.TextBox1.Value = ZelleAE.Offset(0, 1).Value
Me.TextBox2.Value = ZelleAE.Offset(0, 2).Value
Me.TextBox3.Value = ZelleAE.Offset(0, 3).Value
End Sub
Wie muss ich den Code in TextBox2 ändern, damit es mir Eurowerte überträgt (also 20,-- € statt 20)
Vielen Dank
Thomas
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
08.09.2017, 11:13
(Dieser Beitrag wurde zuletzt bearbeitet: 08.09.2017, 11:13 von RPP63.
Bearbeitungsgrund: Alternative ergänzt
)
Moin Thomas!
Code:
Me.TextBox2.Value = Format(ZelleAE.Offset(0, 2).Value, "#,##0,00 €")
Alternativ müsste auch dies funktionieren:
Code:
Me.TextBox2.Value = ZelleAE.Offset(0, 2).Text
Aber Achtung!
Du hast jetzt einen Text und KEIN Zahlenformat in der TB.
Willst Du ihn ändern und wieder in die Tabelle zurückschreiben, geht das so:
Code:
ZelleAE.Offset(0, 2).Value = CDbl(Left(TextBox2, Len(TextBox2) - 2))
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:1 Nutzer sagt Danke an RPP63 für diesen Beitrag 28
• Thomas78
Registriert seit: 15.12.2016
Version(en): 2013
08.09.2017, 11:19
(Dieser Beitrag wurde zuletzt bearbeitet: 08.09.2017, 11:19 von Thomas78.)
Hallo Ralf,
danke für die schnelle Hilfe !
Das mit dem Text ist kein Problem ich will mir nur Preisschilder ausdrucken lassen.
Bei der ersten Version zeigt es mir jetzt in TextBox2 020 € an. Perfekt wäre wenn es mir 20,00 € anzeigen würde.
Die 2. Version funktioniert perfekt.
Danke
Thomas
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
Ja, bei der ersten Version hat sich ein Flüchtigkeitsfehler eingeschlichen.
Du musst englische Trennzeichen verwenden:
Komma für der Tausender,
Punkt für den Dezimal-Separator:
Code:
Me.TextBox2.Value = Format(ZelleAE.Offset(0, 2).Value, "#,##0.00 €")
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:1 Nutzer sagt Danke an RPP63 für diesen Beitrag 28
• Thomas78
Registriert seit: 29.09.2015
Version(en): 2030,5
08.09.2017, 12:08
(Dieser Beitrag wurde zuletzt bearbeitet: 08.09.2017, 12:08 von snb.)
Noch etwas dazu:
Code:
Private Sub ComboBox1_Change()
Sheets("Artikel").Range("B4:F400").Find(ComboBox1).resize(,3)=array(Textbox1,format(Textbox2,"0.00 €"),textbox3)
End Sub
Folgende(r) 1 Nutzer sagt Danke an snb für diesen Beitrag:1 Nutzer sagt Danke an snb für diesen Beitrag 28
• Thomas78
Registriert seit: 15.12.2016
Version(en): 2013
08.09.2017, 12:20
(Dieser Beitrag wurde zuletzt bearbeitet: 08.09.2017, 12:20 von Thomas78.)
Danke,
das probier ich auch noch aus.
Thomas
EDIT : Uh da läuft bei mir was schief. Mit dem Code löscht es mir die ausgewählten Artikel der Combobox aus meiner Tabelle.