VBA Währungsrechner?

2 Antworten

In deinem Code-Schnipsel fehlt der Teil mit der Multiplikation und der Teil in dem der String aus Textbox1 in eine Zahl umgewandelt wird.

So kann dir keiner helfen!

Der häufigste Fehler in VBA ist der automatische typecast bei Variablen des Typs Variant.

Ich schlage vor zunächst die Option "explicit" zu verwenden, die dem Kompiler anweise, keine automatischen Variablen-Declaration vorzunehmen. Du musst dann die Variablen am Begin des Programmes oder der Subroutine manuell deklarieren. Das ist etwas mühsam, hat aber zwei Vorteile. Erstens hast du die vole Kontrolle über deine Variablentypen und den damit verbundenen Einschränkungen der Rechenoperationen und zweitens zwingt es dich, strukturiert zu programmieren und dir zuerst zu überlegen, was du willst und was du dazu brauchst.

If TextBox2 <> "" Then
  TextBox2 = Format(TextBox2, "##,##0.00 Fr.")

An dieser Stelle wolltest du doch sicherlich eigentlich mit dem Value-Property der TextBox2 arbeiten? TextBox2 ist eine GUI-Komponente, kein String.