Valutaomvandlare i Excel VBA - Enkla Excel -makron

Innehållsförteckning

Nedan kommer vi att titta på ett program i Excel VBA som skapar en användarform som konverterar valfritt belopp från en valuta in i en annan.

Användarformen vi ska skapa ser ut så här:

För att skapa denna användarform, utför följande steg.

1. Öppna Visual Basic Editor. Om Project Explorer inte syns, klicka på View, Project Explorer.

2. Klicka på Infoga, användarform. Om Verktygslådan inte visas automatiskt klickar du på Visa, Verktygslåda. Din skärm ska konfigureras enligt nedan.

3. Lägg till etiketter, listrutor (först till vänster, andra till höger), textrutor (först till vänster, andra till höger) och kommandoknapp. När detta har slutförts bör resultatet överensstämma med bilden av användarformen som visades tidigare. Skapa till exempel en listboxkontroll genom att klicka på ListBox från verktygslådan. Därefter kan du dra en listruta på användarformuläret.

4. Du kan ändra namn och bildtexter på kontrollerna. Namn används i Excel VBA -koden. Bildtexter är de som visas på skärmen. Det är bra att ändra namnen på kontrollerna, men det är inte nödvändigt här eftersom vi bara har några få kontroller i det här exemplet. För att ändra bildtexten för användarform, kommandoknapp och etiketter, klicka på Visa, Egenskapsfönster och klicka på varje kontroll.

5. För att visa användarformuläret, placera en kommandoknapp på ditt kalkylblad och lägg till följande kodrad:

Privat underkommandoButton1_Click ()
UserForm1.Show
Avsluta Sub

Vi ska nu skapa Sub UserForm_Initialize. När du använder metoden Visa för användarformuläret körs denna sub automatiskt.

6. Öppna Visual Basic Editor.

7. I Project Explorer, högerklicka på UserForm1 och klicka sedan på Visa kod.

8. Välj Userform från den vänstra listrutan. Välj Initiera från den högra listrutan.

9. Lägg till följande kodrader:

Private Sub UserForm_Initialize ()
Med ListBox1
.AddItem "Euro"
.AddItem "US Dollar"
.AddItem "Brittiskt pund"
Sluta med
Med ListBox2
.AddItem "Euro"
.AddItem "US Dollar"
.AddItem "Brittiskt pund"
Sluta med
ListBox1.ListIndex = 1
ListBox2.ListIndex = 0
TextBox1.Value = 1
TextBox2.Value = 0,722152
Avsluta Sub

Förklaring: först fylls de två listrutorna. Därefter är valutan US -dollar inställd som standard i den första listrutan och EURO -valutan som standard i den andra listrutan. Slutligen anges värdet 1 i den första textrutan och värdet 0,722152 anges i den andra textrutan.

Vi har nu skapat den första delen av Userform. Även om det ser snyggt ut, kommer inget att hända ännu när vi klickar på Go -knappen.

10. Dubbelklicka på UserForm1 i Project Explorer.

11. Dubbelklicka på Go -knappen.

12. Lägg till följande kodrader:

Privat underkommandoButton1_Click ()
Dimhastigheter (0 till 2, 0 till 2) som dubbel, i som heltal, j som heltal
priser (0, 0) = 1
priser (0, 1) = 1,38475
priser (0, 2) = 0,87452
priser (1, 0) = 0,722152
priser (1, 1) = 1
priser (1, 2) = 0,63161
priser (2, 0) = 1,143484
priser (2, 1) = 1,583255
priser (2, 2) = 1
För i = 0 till 2
För j = 0 till 2
Om ListBox1.ListIndex = i Och ListBox2.ListIndex = j Sedan TextBox2.Value = TextBox1.Value * priser (i, j)
Nästa j
Nästa i
Avsluta Sub

Förklaring: först deklarerar vi en array. Arrayen har två dimensioner. Den består av 3 rader och 3 kolumner. Därefter initierar vi varje element i matrisen. Till exempel är kurser (1,0) valutakursen från US -dollar till EURO. Därefter startar vi en dubbel slinga. Beroende på valda valutor i listrutorna konverterar Excel VBA det belopp som anges i den första textrutan och visar resultatet i den andra textrutan.

Exempel: om i = 2 och j = 1 och vi anger värdet 2 i den första textrutan, placerar Excel VBA värdet 2 * priser (2,1) = 2 * 1,583255 = 3,16651 i den andra textrutan.

13. Testa användarformen.

Resultat:

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave