Diferența dintre Subroutine & Funcție în Excel VBA

  • Imparte Asta
Hugh West

Există o mulțime de asemănări între un funcție personalizată/funcție definită de utilizator și procedura Subprocedură/Subprogram în Excel . Cu toate acestea, Funcția procedurile au câteva diferențe importante față de Subrutină În acest articol, vom vedea diferența dintre subrutină și funcție în Excel VBA .

Descărcați caietul de practică

Puteți descărca caietul de practică de aici.

Subrutină și funcție.xlsm

Introducere în Subroutine & Funcție în Excel VBA

Cea mai importantă diferență este că o funcție returnează o valoare (un număr sau un șir de text). Valoarea procedurii funcției este stocată într-o variabilă; o variabilă al cărei nume este același cu numele funcției. Subrutina execută un anumit set de sarcini și nu returnează o valoare, ca funcțiile.

1. Funcția definită de utilizator Excel VBA

A se vedea următorul exemplu. AddTwoNumber este numele funcției. Această funcție va returna suma a două numere trecute ca fiind argumente ( arg1 și arg2 ). Suma este stocată într-o variabilă numită AddTwoNumber același cu numele funcției.

Funcția VBA AddTwoNumber

Pentru a crea o funcție personalizată, urmați acești pași:

  • În primul rând, activați Editor VBA prin apăsarea Alt+F11 .
  • În al doilea rând, selectați registrul de lucru din fereastra Proiect fereastră.
  • În al treilea rând, alegeți Introduceți și apoi Modul pentru a insera un VBA De asemenea, puteți utiliza un modul de cod existent. Modulul de cod trebuie să fie un modul de cod standard. VBA modul.

  • Apoi, copiați și lipiți codul de mai jos pentru funcție. Numele funcției trebuie să fie unic pentru registrul de lucru respectiv. Introduceți o listă de argumente (dacă există) în paranteze. Dacă funcția nu utilizează niciun argument, se va folosi codul Editor VBA adaugă un set de paranteze goale.
 Funcția AddTwoNumber(arg1, arg2) 'Returnează suma celor două numere pe care le furnizați ca argumente AddTwoNumber = arg1 + arg2 End Function 
  • În plus, această parte este importantă. Introduceți VBA valoarea pe care doriți să o returnați din această funcție va fi stocată într-o variabilă; o variabilă al cărei nume este același cu numele funcției.
  • În cele din urmă, terminați funcția cu un Sfârșitul funcției .

Citește mai mult: Cum se utilizează funcția definită de utilizator VBA (4 exemple adecvate)

Lecturi similare

  • 22 Exemple de macro în Excel VBA
  • 20 Sfaturi practice de codare pentru a stăpâni Excel VBA
  • Cum să scrieți cod VBA în Excel (cu pași simpli)
  • Tipuri de macro-uri VBA în Excel (Un ghid rapid)

2. Subrutină Excel VBA

În exemplul următor, veți vedea cum subprogramul din Excel VBA funcționează. Sub începe corpul subrutinei. Numele subrutinei este square_root. În corpul subrutinei, efectuăm o sarcină în celula A2 Sarcina este de a efectua rădăcina pătrată în celula A2 Aceasta înseamnă că, dacă celula conține un număr, Excel VBA va efectua rădăcina pătrată a celulei respective. End Sub încheie corpul subprogramului.

Pentru a crea un subprogram, urmați acești pași:

  • În primul rând, activați Editor VB (apăsați Alt+F11 ).
  • În al doilea rând, selectați registrul de lucru din fereastra Proiect fereastră.
  • În al treilea rând, alegeți Introduceți și apoi Modul pentru a insera un modul VBA. De asemenea, puteți utiliza un modul de cod existent. Modulul de cod trebuie să fie un modul VBA standard.

  • Apoi, introduceți cuvântul cheie SUB urmată de numele subrutinei.
  • În plus, introduceți VBA codul pe care doriți să îl efectuați.
 Sub square_root() Range("C5").Value = Range("C4").Value ^ (1 / 2) End Sub 
  • În cele din urmă, subrutina cu un End Sub .

Diferențe cheie între Subroutine & Funcție în Excel VBA

După efectuarea separată a subrutinei și a funcțiilor, putem concluziona diferențele din tabelul de mai jos.

Funcții Subrutine
1) Returnează o valoare. 1) Efectuează un set de sarcini, dar nu returnează o valoare.
2) Funcțiile sunt apelate prin utilizarea unei variabile. 2) Poate fi rechemat de oriunde în program, în mai multe tipuri, după declarație.
3) Pot fi utilizate ca formule în foile de calcul. 3) Nu pot fi utilizate direct în foile de calcul ca formule.
4) Putem folosi funcții ca formule în foile de calcul. Putem să le executăm de mai multe ori după rularea codului. 4) Pentru a afla rezultatul subrutinei Excel VBA, trebuie să introducem mai întâi o valoare în celula dorită.
5) Sintaxă:

Funcția Nume_funcție()

//Set de coduri

Sfârșitul funcției

5) Sintaxă:

Sub Sub Sub_Name ()

//Set de coduri

End Sub

Lucruri de reținut

  • Dezvoltatorul fila trebuie să fie activată înainte de a utiliza aceste metode.
  • Putem găsi Subrutină în Macros în Dezvoltator în timp ce funcțiile definite de utilizator din tab-ul Funcția fila folosind căutarea personalizată.

Concluzie

Dacă încă aveți probleme cu oricare dintre aceste instrucțiuni sau aveți discrepanțe, anunțați-ne în comentarii. Echipa noastră este pregătită să vă răspundă la toate întrebările. Pentru orice probleme legate de excel, puteți vizita site-ul nostru web ExcelWIKI pentru soluții.

Hugh West este un trainer și analist Excel cu o experiență de peste 10 ani în industrie. Deține o diplomă de licență în contabilitate și finanțe și un master în administrarea afacerilor. Hugh are o pasiune pentru predare și a dezvoltat o abordare unică de predare care este ușor de urmărit și de înțeles. Cunoștințele sale experte despre Excel au ajutat mii de studenți și profesioniști din întreaga lume să-și îmbunătățească abilitățile și să exceleze în cariera lor. Prin blogul său, Hugh își împărtășește cunoștințele lumii, oferind tutoriale gratuite Excel și instruire online pentru a ajuta persoanele și companiile să-și atingă întregul potențial.