Sub VBA | Com trucar al subprocediment al codi VBA?

Subprocediment d'Excel VBA

SUB a VBA també es coneix com a subrutina o procediment que conté tot el codi, és una declaració incorporada a VBA i, quan s’utilitza, ens proporciona automàticament la declaració de final sub i la part central s’utilitza per codificar, la sentència sub pot ser tant pública com privat i el nom del subprocés és obligatori a VBA.

Sub significa Sub Procediment a VBA. Els subprocediments s'utilitzen per realitzar un conjunt específic de tasques proporcionades en forma de codi. Només realitza la tasca esmentada al codi segons l'idioma VBA, però no retorna cap tipus de valor.

Com s’escriu els subprocediments de VBA?

Podeu descarregar aquesta plantilla de procediment secundari VBA aquí: plantilla de procediment secundari VBA

Per escriure codis de subprocés, és important entendre l'estructura del subprocés. A continuació es mostra l’estructura

Sub [Nom del procediment] (Paràmetres) [Què cal fer?]) Final Sub 

Per iniciar el subprocés hem d’utilitzar la paraula “Sub” i hem de donar un nom al Sub com a nom de procediment. Nom del procediment no és res més que el nostre nom de macro. Al subprocediment VBA, no solem tenir paràmetres dins del parèntesi.

Després d’escriure el nom del procediment Sub, hem d’escriure les tasques que cal fer. Després ve la sentència End, és a dir, End Sub.

Exemple 1: subprocediment simple

Ara mireu els senzills mètodes d'escriptura de subprocediments.

Pas 1: Inicieu la paraula "Sub" al mòdul.

Pas 2: Ara poseu un nom al nom de la macro o al nom del procediment.

Pas 3: Després de donar el nom al subprocés, només cal que premeu la tecla Retorn, aplicarà automàticament la declaració final.

Ara podem veure dues coses aquí: una és l’inici i una altra és el final del subprocés. Per a una millor comprensió, podem anomenar-lo "Cap" i "Cua".

Entre el cap i la cua de la macro, hem d’escriure el nostre codi per realitzar alguna tasca.

Exemple 2: tasca de subrutina simple

D'acord, ara veurem com realitzar una acció senzilla aquí.

Suposem que voleu inserir el valor "Excel VBA" a la cel·la A1.

Pas 1: Inicieu el subprocés mitjançant els mètodes anteriors.

Codi:

 Subacció 1 () Finalitzar sub 

Pas 2: Per accedir a la cel·la A1 hem d’utilitzar la paraula RANGE.

Codi:

 Subacció 1 () Rang (finalització sub 

Pas 3: Es pregunta quina és la cel·la que voleu referir? En aquest cas, es tracta d’una cel·la A1.

Codi:

 Subacció 1 () Interval ("A1") Finalització sub 

Pas 4: Hem d’inserir el valor “Excel VBA”, així que seleccioneu VALUE propietat posant un punt després de l’interval.

Codi:

 Subacció 1 () Interval ("A1"). Valor final Sub 

Quan comenceu a escriure la paraula VALUE, veureu moltes opcions i aquestes opcions s’anomenen llista IntelliSense que prediu en funció del que escriviu. Així és com apareixeran les fórmules al full de treball quan comencem a escriure la fórmula.

Pas 5: Després de seleccionar VALOR, poseu un signe igual i introduïu el valor entre cometes dobles com a "Excel VBA".

Codi:

 Subacció Action1 () Range ("A1"). Valor = "Excel VBA" End Sub 

Per tant, ja hem acabat.

Ara hem d’executar aquesta tasca. Per executar la tasca que teníem, hem d'executar aquest codi prement el botó RUN a la finestra de l'editor visual bàsic.

També podem prémer la tecla de drecera Excel situant el cursor dins del codi macro.

Tan bon punt executeu el codi, obtindreu el valor "Excel VBA" a la cel·la A1.

Tipus de subrutina VBA

Tenim dos tipus més al subprocés: un és el subprocés públic i el segon és el subprocés privat.

Les paraules "Públic" i "Privat" són modificadors d'accessibilitat que ens permeten utilitzar els subprocediments de manera diferent.

  • Subprocediment públic ens permet utilitzar el procediment en tots els mòduls del llibre.
  • Subprocediment privat ens permet utilitzar el procediment només al mòdul actual, enlloc més.

Per exemple, mireu la imatge següent del codi públic que es troba al mòdul 1.

Ara al mòdul 2 també puc utilitzar aquest subprocés.

Acció1 és el nom del subprocés que hem utilitzat al mòdul 1.

Al mòdul 2 l'he esmentat com a "Acció de trucada1". Això vol dir que quan s'executi el subprocés, s'executarà el subprocediment Action1 des del mòdul 1.

Subprocediments privats no es pot accedir des d’un mòdul diferent, només hem d’accedir-hi des del mateix mòdul.