Im Folgenden werden wir ein Programm in Excel VBA, die auf eine Userform erstellt, die jede Menge von einer Währung in eine andere umwandelt.

Die Userform werden wir aussehen wie folgt erstellen:

Currency Converter in Excel VBA

Um diese Userform zu erstellen, führen Sie die folgenden Schritte.

  1. Öffnen Sie den Visual Basic-Editor. Wenn das Projekt-Explorer nicht sichtbar ist, klicken Sie auf Ansicht, Projekt-Explorer.

  2. Klicken Sie auf Einfügen, Benutzerformular. Wenn die Toolbox nicht automatisch angezeigt wird, klicken Sie auf Ansicht, Toolbox. Ihr Bildschirm sollte wie unten aufgebaut werden.

Userform Screen Setup in Excel VBA

  1. die Etiketten hinzufügen, Listenfelder (erste links auf die zweite auf der rechten Seite), Textfelder (zuerst auf der linken Seite, der zweite auf der rechten Seite) und den Befehlsschaltflächen. Sobald dies abgeschlossen ist, sollte das Ergebnis mit dem Bild von der Userform gezeigt früher konsistent sein. Erstellen Sie zum Beispiel auf ListBox aus der Toolbox ein Listenfeld, indem Sie auf. Als nächstes können Sie ein Listenfeld auf dem Benutzerformular ziehen.

  2. Sie können die Namen ändern und die Beschriftungen der Kontrollen. Die Namen werden in dem Excel-VBA-Code verwendet. Bildunterschriften sind diejenigen, die auf dem Bildschirm angezeigt. Es empfiehlt sich, die Namen der Kontrollen zu ändern, aber es ist hier nicht notwendig, da wir nur wenige Kontrollen in diesem Beispiel haben. Um die Beschriftung der Userform zu ändern, Befehlsschaltfläche und Etiketten, klicken Sie auf Ansicht, Eigenschaften-Fenster und klicken Sie auf jede Kontrolle.

  3. die Userform zu zeigen, eine Befehlsschaltfläche auf dem Arbeitsblatt platzieren und die folgende Codezeile hinzu:

Private Sub CommandButton1_Click()

UserForm1.Show

End Sub

Wir werden jetzt die Sub UserForm_Initialize zu erstellen. Wenn Sie die Show-Methode für die Userform verwenden, wird diese Unter automatisch ausgeführt werden.

  1. Öffnen Sie den Visual Basic-Editor.

  2. Geben Sie in dem Projekt-Explorer direkt auf UserForm1 und klicken Sie dann auf Code anzeigen klicken.

Wählen Sie Userform aus der linken Dropdown-Liste 8.. Wählen Sie Initialisieren von der rechten Dropdown-Liste.

  1. die folgenden Codezeilen hinzu:

Private Sub UserForm_Initialize()

With ListBox1

.AddItem "Euro"

.AddItem "Us Dollar"

.AddItem "British Pound"

End With

With ListBox2

.AddItem "Euro"

.AddItem "Us Dollar"

.AddItem "British Pound"

End With

ListBox1.ListIndex = 1

ListBox2.ListIndex = 0

TextBox1.Value = 1

TextBox2.Value = 0.722152

End Sub

Erläuterung: Zunächst werden die beiden Listenfelder gefüllt sind. Als nächstes wird die US-Dollar Währung als Standard in dem ersten Listenfeld gesetzt und der EURO currencyis als Standard in dem zweiten Listenfeld gesetzt. Schließlich wird der Wert 1 in dem ersten Textfeld eingegeben, und der Wert 0,722152 wird in dem zweiten Textfeld eingegeben.

Wir haben nun den ersten Teil der Userform erstellt. Obwohl es schon ordentlich aussieht, wird noch nichts geschehen, wenn wir auf die Schaltfläche Start klicken.

  1. In dem Projekt-Explorer, klicken Sie doppelt auf UserForm1.

  2. Klicken Sie doppelt auf die Schaltfläche Go.

  3. Fügen Sie die folgenden Codezeilen:

Private Sub CommandButton1_Click()

Dim rates(0 To 2, 0 To 2) As Double, i As Integer, j As Integer

rates(0, 0) = 1

rates(0, 1) = 1.38475

rates(0, 2) = 0.87452



rates(1, 0) = 0.722152

rates(1, 1) = 1

rates(1, 2) = 0.63161



rates(2, 0) = 1.143484

rates(2, 1) = 1.583255

rates(2, 2) = 1



For i = 0 To 2

For j = 0 To 2

If ListBox1.ListIndex = i And ListBox2.ListIndex = j Then TextBox2.Value = TextBox1.Value  rates(i, j)

Next j

Next i

End Sub

Erläuterung: Erstens, wir ein Array deklarieren. Das Array hat zwei Dimensionen.

Es besteht aus 3 Reihen und 3 Spalten. Als nächstes initialisieren wir jedes Element des Arrays. Zum Beispiel Raten (1,0) sind der Wechselkurs von US-Dollar zu EURO. Als nächstes wir eine doppelte Schleife starten. Je nach den gewählten Währungen in den Listenfeldern, konvertiert Excel VBA den Betrag in dem ersten Textfeld eingegeben und zeigt das Ergebnis im zweiten Textfeld ein.

Beispiel: Wenn i = 2 und j = 1, und wir geben Sie den Wert 2 im ersten Textfeld Excel VBA legt den Wert 2 Raten (2,1) = 2 * 1,583255 = 3,16651 im zweiten Textfeld ein.

  1. Testen Sie die Userform.

Ergebnis:

Currency Converter Result