Diferència entre subrutina i amp; Funció en Excel VBA

  • Comparteix Això
Hugh West

Hi ha moltes similituds entre un procediment de funció personalitzada/funció definida per l'usuari i el subprocediment/subrutina a Excel . Tanmateix, els procediments Function tenen algunes diferències importants amb els procediments subrutina . En aquest article, veurem la diferència entre la subrutina i la funció a Excel VBA .

Descarregar el quadern de pràctiques

Podeu descarregar el quadern de pràctiques des d'aquí.

Subrutina i Function.xlsm

Introducció a la subrutina i amp; Funció a Excel VBA

La diferència més important és que una funció retorna un valor (un número o una cadena de text). El valor del procediment de funció s'emmagatzema en una variable; una variable el nom de la qual és el mateix que el nom de la funció. La subrutina realitza un conjunt de tasques i no retorna un valor com les funcions.

1. Funció definida per l'usuari d'Excel VBA

Vegeu l'exemple següent. AddTwoNumber és el nom de la funció. Aquesta funció retornarà la suma de dos nombres passats com a arguments ( arg1 i arg2 ). La suma s'emmagatzema en una variable anomenada AddTwoNumber igual que el nom de la funció.

AddTwoNumber VBA Function

Per crear una funció personalitzada, seguiu aquests passos:

  • En primer lloc, activeu l' Editor VBA prement Alt+F11 .
  • En segon lloc, seleccioneu el llibre de treball al Projecte finestra.
  • En tercer lloc,trieu Insereix i després Mòdul per inserir un VBA També podeu utilitzar un mòdul de codi existent. El mòdul de codi ha de ser un mòdul VBA estàndard.

  • A continuació, copieu i enganxeu el codi següent per a la funció. El nom de la funció ha de ser únic per a aquest llibre de treball. Introduïu una llista dels arguments (si n'hi ha) entre parèntesis. Si la funció no utilitza cap argument, l' Editor de VBA afegeix un conjunt de parèntesis buits.
7331
  • A més, aquesta part és important. Inseriu el codi VBA que compleixi l'objectiu previst. El valor que voleu retornar d'aquesta funció s'emmagatzemarà en una variable; una variable el nom de la qual és el mateix que el nom de la funció.
  • Finalment, finalitzeu la funció amb un Fin funció .

Més informació: Com utilitzar la funció definida per l'usuari de VBA (4 exemples adequats)

Lectures similars

  • 22 exemples de macro a Excel VBA
  • 20 consells pràctics de codificació per dominar Excel VBA
  • Com escriure codi VBA a Excel (Amb passos senzills)
  • Tipus de macros VBA a Excel (una guia ràpida)

2. Subrutina VBA d'Excel

A l'exemple següent, veureu com funciona la subrutina a Excel VBA . Aquí el Sub inicia el cos de la subrutina. El nom de la subrutina és arrel_quadrada. En el cos de la subrutina, realitzem una tasca a la cel·la A2 . La tasca és realitzar l'arrel quadrada a la cel·la A2 . Vol dir, si la cel·la conté algun número, l'Excel VBA realitzarà l'arrel quadrada d'aquesta cel·la. El End Sub acaba el cos de la subrutina.

Per crear una subrutina, seguiu aquests passos:

  • Primer, activeu l' Editor VB (preme Alt+F11 ).
  • En segon lloc, seleccioneu el llibre de treball a la finestra Projecte .
  • Tercer, trieu Insereix i després Mòdul per inserir un mòdul VBA. També podeu utilitzar un mòdul de codi existent. El mòdul de codi ha de ser un mòdul VBA estàndard.

  • A continuació, introduïu la paraula clau SUB seguida del nom de la subrutina.
  • A més, inseriu el codi VBA que voleu executar.
6005
  • Finalment, la subrutina amb un End Sub .

Diferències clau entre subrutina i amp; Funció a Excel VBA

Després de realitzar la subrutina i les funcions per separat podem concloure les diferències a la taula següent.

Funcions Subrutines
1) Retorna un valor. 1) Realitza un conjunt de tasques però no retorna cap valor. .
2) Les funcions es criden mitjançant una variable. 2) Es poden recuperar des de qualsevol lloc del programa en diversos tipus després de la declaració.
3) Es pot utilitzar com a fórmules als fulls de càlcul. 3) No es pot utilitzardirectament als fulls de càlcul com a fórmules.
4) Podem utilitzar les funcions com a fórmules als fulls de càlcul. Podem realitzar-ho diverses vegades després d'executar el codi. 4) Per trobar el resultat de la subrutina Excel VBA hem d'inserir primer un valor a la cel·la desitjada.
5) Sintaxi:

Nom_funció de la funció()

//Conjunt de codis

Funció final

5) Sintaxi:

Sub Sub_Nom ()

//Conjunt de codis

End Sub

Coses per recordar

  • La pestanya desenvolupador s'ha d'activar abans d'utilitzar aquests mètodes.
  • Podem trobar subrutina a Macros a la pestanya Desenvolupador mentre que les funcions definides per l'usuari a la pestanya Funció mitjançant la cerca personalitzada.

Conclusió

Si encara tens problemes amb alguna d'aquestes instruccions o tens discrepàncies, fes-nos-ho saber als comentaris. El nostre equip està preparat per respondre totes les vostres preguntes. Per a qualsevol problema relacionat amb Excel, podeu visitar el nostre lloc web ExcelWIKI per obtenir solucions.

Hugh West és un entrenador i analista d'Excel molt experimentat amb més de 10 anys d'experiència en el sector. És llicenciat en Comptabilitat i Finances i Màster en Administració i Direcció d'Empreses. Hugh té una passió per l'ensenyament i ha desenvolupat un enfocament pedagògic únic que és fàcil de seguir i entendre. El seu coneixement expert d'Excel ha ajudat a milers d'estudiants i professionals de tot el món a millorar les seves habilitats i a destacar en les seves carreres. A través del seu bloc, Hugh comparteix els seus coneixements amb el món, oferint tutorials d'Excel gratuïts i formació en línia per ajudar les persones i les empreses a assolir tot el seu potencial.