Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Formatierung Werte in VBA- Combobox

Forumthread: Formatierung Werte in VBA- Combobox

Formatierung Werte in VBA- Combobox
28.07.2003 14:29:57
kerstin
Hallo, ich hoffe, es kann mir jemand bei folgendem Problem helfen:
ich errechne einen Wert, den ich in einer Combobox mit 1000-er Trennzeichen ausgeben will.
- Combobox1.NumberFormat = "#,##0.00" funktioniert nicht;
- i = Format(i, "#,##0.00") und anschließende Ausgabe von i in der Box
ebenfalls nicht,
Für Hilfe wäre ich sehr dankbar,
Kerstin
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formatierung Werte in VBA- Combobox
28.07.2003 14:54:53
Ivan
hi kerstin
versuch es mal so

Private Sub Combobox1_BeforUpdate(ByVal Cancel As MSForms.ReturnBoolean)
ComboBox1 = Format(ComboBox1, "#,##0.00")
End Sub

gruss
ivan

AW: Formatierung Werte in VBA- Combobox
28.07.2003 14:55:36
Michael Schirow
Hi Kerstin,
vielleicht hilft dir das Beispiel weiter:
option explicit

Private Sub UserForm_Initialize()
Dim x As Single
x = 1000.123
UserForm1.ComboBox1.Value = Format(x, "#,##0.00")
x = 2000.456
UserForm1.ComboBox1.AddItem Format(x, "#,##0.00")
x = 2000.789
UserForm1.ComboBox1.AddItem Format(x, "#,##0.00")
End Sub

HTH, Michael

Anzeige
;
Anzeige

Infobox / Tutorial

Formatierung von Werten in einer VBA-Combobox


Schritt-für-Schritt-Anleitung

Um Werte in einer VBA-Combobox mit 1000-er Trennzeichen und zwei Dezimalstellen zu formatieren, folge diesen Schritten:

  1. Öffne den VBA-Editor in Excel (Alt + F11).

  2. Füge ein UserForm hinzu, falls noch nicht vorhanden.

  3. Ziehe eine Combobox in das UserForm.

  4. Erstelle die Initialisierungsprozedur mit folgendem Code:

    Private Sub UserForm_Initialize()
       Dim x As Single
       x = 1000.123
       ComboBox1.Value = Format(x, "#,##0.00")
       x = 2000.456
       ComboBox1.AddItem Format(x, "#,##0.00")
       x = 2000.789
       ComboBox1.AddItem Format(x, "#,##0.00")
    End Sub
  5. Verwende die BeforUpdate-Ereignisprozedur, um die Formatierung anzuwenden:

    Private Sub ComboBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
       ComboBox1 = Format(ComboBox1, "#,##0.00")
    End Sub

Häufige Fehler und Lösungen

  • Fehler: Formatierung wird nicht angewendet.

    • Lösung: Stelle sicher, dass die Formatierung im BeforeUpdate-Ereignis der Combobox erfolgt.
  • Fehler: Werte erscheinen ohne Trennzeichen.

    • Lösung: Überprüfe, ob der Code korrekt in das UserForm eingefügt wurde und die richtige Syntax verwendet wird.

Alternative Methoden

Eine alternative Methode zur Formatierung von Werten in einer VBA-Combobox kann die Erstellung einer benutzerdefinierten Funktion sein. Diese Funktion kann die Formatierung von Werten zentral steuern und dann in der Combobox verwendet werden.

Function FormatValue(ByVal value As Double) As String
    FormatValue = Format(value, "#,##0.00")
End Function

Verwende diese Funktion dann in deiner UserForm_Initialize-Prozedur:

UserForm1.ComboBox1.Value = FormatValue(x)

Praktische Beispiele

Hier sind einige Beispiele, wie du die Formatierung in einer Combobox umsetzen kannst:

Private Sub UserForm_Initialize()
    Dim values As Variant
    values = Array(1000.123, 2000.456, 3000.789)

    Dim i As Integer
    For i = LBound(values) To UBound(values)
        ComboBox1.AddItem Format(values(i), "#,##0.00")
    Next i
End Sub

Dieses Beispiel zeigt, wie du mehrere Werte in die Combobox einfügen kannst, wobei jedes Element entsprechend formatiert ist.


Tipps für Profis

  • Verwende Option Explicit: Dies hilft, Fehler durch uninitialisierte Variablen zu vermeiden.
  • Testen in der richtigen Umgebung: Stelle sicher, dass du deine VBA-Codes in der richtigen Excel-Version testest, um Kompatibilitätsprobleme zu vermeiden.
  • Fehlerbehandlung einfügen: Implementiere Fehlerbehandlungsroutinen, um unerwartete Fehler während der Laufzeit zu erkennen und zu handhaben.

FAQ: Häufige Fragen

1. Warum funktioniert die Formatierung nicht in meiner Combobox?
Stelle sicher, dass du die Formatierung im BeforeUpdate-Ereignis der Combobox korrekt angegeben hast.

2. Kann ich auch andere Formatierungen verwenden?
Ja, du kannst das Format anpassen, z.B. für Währungen oder Prozentsätze, indem du das Format-Argument in der Format-Funktion änderst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige