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

Textbox mit Währungsformat in Zelle schreiben

Forumthread: Textbox mit Währungsformat in Zelle schreiben

Textbox mit Währungsformat in Zelle schreiben
29.12.2002 12:04:38
Robert B.
Hallo Excelfreunde,

Ich versuche den Wert einer Textbox im Währungsformat
in eine Zelle zu schreiben die folgende Formatierung hat.

Menü Zellen formatieren\Zahlen:
Währung, Dezimalstellen 2 ,Symbol € Euro (123€)
Negative Zahlen -1.234,10 €
Beispiel 0,00 €

Beim verlassen der Textbox wird diese wie folgt formatiert

beim Speichern wird der Inhalt der Textbox mit
Cells(z, 16) = TextBox16
in die Zelle geschrieben.

Das Problem besteht darin, dass der Wert linksbündig
in die Zelle geschrieben wird und nicht wie bei der manuellen
Eingabe rechtsbündig. Somit wird der Wert bei meinen Auswertungen nicht mitgezählt.

Die Formatierung ist nach wie vor wie oben beschrieben.

Wer kann mir helfen?
In der Recherche und auf der CD habe ich keine Hinweise gefunden.

Gruß Robert



Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Textbox mit Währungsformat in Zelle schreiben
29.12.2002 12:09:20
Hajo_zi
Hallo Robert

eine Textbox enthält Text und als Text wird es auch in die Zelle geschrieben.

Nicht die Textbox formatieren sondern die Zelle.
Cells(z, 16) = Cdbl(TextBox16)

Gruß Hajo

Re: Textbox mit Währungsformat in Zelle schreiben
29.12.2002 12:22:08
Robert B.
Hallo Hajo,

das habe ich auch versucht.

Ich schaffe es aber nicht das benötigte Format herzustellen.
Selbst die Formatierung wie folgt hilft nicht.

Cells(z, 16) = TextBox16
Cells(z, 16).NumberFormat = "#,##0.00 [$€-1]"

Warum nicht??

Hast Du noch eine Idee


Gruß Robert

Anzeige
Re: Textbox mit Währungsformat in Zelle schreiben
29.12.2002 12:25:17
Hajo_ZI
Hallo Robert

lies meinen Beitrag noch mal. besonders
Cells(z, 16) = Cdbl(TextBox16)
eine Textbox enthält Text und als Text wird es auch in die Zelle geschrieben

Gruß Hajo

Re: Textbox mit Währungsformat in Zelle schreiben
29.12.2002 12:30:03
Nepumuk
Hallo Robert,
verwende einfach - Cells(1, 1).Value = Val(TextBox16.Value)
Gruß
Nepumuk
Re: Textbox mit Währungsformat in Zelle schreiben
29.12.2002 12:44:43
Robert B.
Hallo Hajo und Nepumuk,

Da habe ich wohl nicht richtig Aufgepasst.

Mit der Typ Umwandlung funktioniert es wunderbar.

Ich muss Cdbl() verwenden damit auch Kommazahlen funktionieren.


Vielen Dank für die schnelle und präzise Antwort

Ich wünsche Euch noch einen schönen Sonntag und einen guten Rutsch ins neue Jahr

Gruß Robert

Anzeige
;
Anzeige

Infobox / Tutorial

Textbox mit Währungsformat in Zelle schreiben


Schritt-für-Schritt-Anleitung

  1. Textbox erstellen: Füge eine Textbox in dein Excel-Dokument ein. Dies kannst du über die Entwicklertools im Menü „Einfügen“ machen.

  2. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Code für die Textbox: Füge folgenden Code in das entsprechende Formular ein:

    Private Sub TextBox16_Exit(ByVal Cancel As MSForms.ReturnBoolean)
       Dim z As Long
       z = 1 ' Beispiel für Zeile, in die geschrieben wird
       Cells(z, 16) = Cdbl(TextBox16.Value) ' Umwandlung in Double
       Cells(z, 16).NumberFormat = "0.00 [$€-1]" ' Währungsformat setzen
    End Sub
  4. Formatierung überprüfen: Stelle sicher, dass die Zielzelle im Währungsformat formatiert ist. Gehe dazu auf „Zellen formatieren“ und wähle „Währung“.

  5. Textbox testen: Gib einen Betrag in die Textbox ein und verlasse sie, um zu sehen, ob der Wert korrekt in die Zelle geschrieben wird.


Häufige Fehler und Lösungen

  • Wert wird linksbündig angezeigt: Wenn der Wert nach dem Speichern linksbündig erscheint, verwende die Funktion Cdbl() wie im obigen Code gezeigt. Diese Konvertierung sorgt dafür, dass Excel den Wert als Zahl erkennt.

  • Kein Währungsformat angewendet: Wenn das Währungsformat nicht korrekt angezeigt wird, überprüfe, ob die Formatierung der Zelle korrekt gesetzt ist. Achte darauf, dass die Zelle vorher im Währungsformat formatiert ist.


Alternative Methoden

Wenn du eine andere Methode bevorzugst, kannst du auch die Val()-Funktion verwenden, um den Wert der Textbox in die Zelle zu schreiben. Ersetze die Zeile im VBA-Code durch:

Cells(z, 16).Value = Val(TextBox16.Value)

Diese Methode ist einfacher, könnte aber in einigen Fällen zu unerwarteten Ergebnissen führen, wenn du mit Währungsformatierungen arbeitest.


Praktische Beispiele

  • Beispiel für Währungsformat: Wenn du in die Textbox „123,45“ eingibst, sollte der Wert in der Zelle als „123,45 €“ angezeigt werden, nachdem du die Textbox verlässt.

  • Negative Werte: Stelle sicher, dass negative Werte korrekt eingegeben werden. Wenn du „-123,45“ eingibst, sollte dies als „-123,45 €“ angezeigt werden.


Tipps für Profis

  • Schnellformatierung: Nutze die Tastenkombination Strg + 1, um schnell auf die Zellenformatierung zuzugreifen und das Währungsformat auszuwählen.

  • VBA Optimierung: Du kannst mehrere Textboxen gleichzeitig verarbeiten, indem du eine Schleife im VBA-Code verwendest, um die Werte aus mehreren Textboxen in verschiedene Zellen zu schreiben.


FAQ: Häufige Fragen

1. Warum erscheint der Betrag nicht im richtigen Währungsformat?
Überprüfe, ob die Zelle, in die der Wert geschrieben wird, tatsächlich im Währungsformat formatiert ist. Verwende die NumberFormat-Eigenschaft im VBA, um das Format direkt zu setzen.

2. Was ist der Unterschied zwischen Val() und Cdbl()?
Val() wandelt einen Text in eine Zahl um, während Cdbl() sicherstellt, dass der Wert als Double interpretiert wird, was wichtig ist, wenn du mit Dezimalstellen und Währungsformaten arbeitest.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige