Funcția Excel VBA și macrocomenzile Excel ușoare

Cuprins

Funcția | Sub

Diferența dintre a funcţie și a sub în Excel VBA este că o funcție poate returna o valoare în timp ce un sub nu poate. Funcțiile și subs-urile devin foarte utile pe măsură ce dimensiunea programului crește.

Funcţie

Dacă doriți ca Excel VBA să efectueze o sarcină care returnează un rezultat, puteți utiliza o funcție. Plasați o funcție într-un modul (În Editorul Visual Basic, faceți clic pe Inserare, Modul). De exemplu, funcția cu numele Area.

Zona de funcții (x ca dublă, y ca dublă) ca dublă
Suprafață = x * y
Funcția de sfârșit

Explicație: Această funcție are două argumente (de tip Double) și un tip return (partea după Ca și de tip Double). Puteți utiliza numele funcției (zonă) în codul dvs. pentru a indica rezultatul pe care doriți să îl returnați (aici x * y).

Acum puteți face referire la această funcție (cu alte cuvinte, apelați funcția) din altă parte din codul dvs. utilizând pur și simplu numele funcției și oferind o valoare pentru fiecare argument.

Plasați un buton de comandă pe foaia de lucru și adăugați următoarele linii de cod:

Dim z Ca Dublu
z = Suprafața (3, 5) + 2
MsgBox z

Explicație: Funcția returnează o valoare, deci trebuie să „prindeți” această valoare în cod. Puteți utiliza o altă variabilă (z) pentru aceasta. Apoi, puteți adăuga o altă valoare acestei variabile (dacă doriți). În cele din urmă, afișați valoarea utilizând un MsgBox.

Rezultatul când faceți clic pe butonul de comandă de pe foaie:

Sub

Dacă doriți ca Excel VBA să efectueze unele acțiuni, puteți utiliza un sub. Plasați un sub într-un modul (în Editorul Visual Basic, faceți clic pe Inserare, modul). De exemplu, sub-ul cu numele Area.

Subzona (x Ca dublă, y Ca dublă)
MsgBox x * y
Sfârșitul Sub

Explicație: Acest sub are două argumente (de tip Double). Nu are un tip de returnare! Puteți face referire la acest sub (numiți sub) din altă parte din codul dvs., utilizând pur și simplu numele sub și oferind o valoare pentru fiecare argument.

Plasați un buton de comandă pe foaia de lucru și adăugați următoarea linie de cod:

Zona 3, 5

Rezultatul când faceți clic pe butonul de comandă de pe foaie:

Puteți vedea diferența dintre funcție și sub? Funcția a returnat valoarea 15. Am adăugat valoarea 2 la acest rezultat și am afișat rezultatul final. Când am apelat sub nu am mai avut control asupra rezultatului (15) deoarece un sub nu poate returna o valoare!

Vei ajuta la dezvoltarea site-ului, partajarea pagina cu prietenii

wave wave wave wave wave