Taula de continguts
En aquest article, us mostraré com podeu utilitzar una instrucció If a VBA a Excel en funció del valor d'una cel·la.
Excel VBA: si declaració basada en el valor de la cel·la (vista ràpida)
8533
Descarregueu el llibre de pràctiques
Descarregueu aquesta pràctica llibre de treball per fer exercici mentre llegiu aquest article.
If Statement Based on Cell Value.xlsm
If Statement Based on Cell Value in Excel VBA
Aquí tenim un full de treball que conté els noms i notes d'alguns alumnes d'una escola en un examen.
El nostre objectiu és aprendre a utilitzar la instrucció If a Excel VBA en funció d'un valor de cel·la d'aquest conjunt de dades.
1. . Declaració If basada en el valor de la cel·la d'una sola cel·la a Excel VBA
En primer lloc, aprendrem a utilitzar una instrucció If basada en el valor d'una sola cel·la.
Per exemple, mirem de veure si la Natalia Austin va aprovar l'examen o no, és a dir, si la nota de la cel·la C3 és més gran que 40 o no.
La columna D conté el resultat dels alumnes. És a dir, si la cel·la C3 conté una marca superior a 40, la cel·la D3 contindrà "Aprovat" . En cas contrari, contindrà “Failed” .
Utilitzarem un objecte VBA Range per crear aquesta instrucció If en funció del valor de la cel·la.
El codi VBA per a això serà:
⧭ VBACodi:
6718
⧭ Sortida:
Executeu el codi des del Executar sub/Formulari d'usuari a la barra d'eines VBA .
Farà que la cel·la D3 contingui “Error” , ja que la marca de la cel·la C3 és inferior a 40 ( 32 ).
2. Declaració If basada en valors d'un rang de cel·les a Excel VBA
També podeu utilitzar la Declaració If basada en els valors d'un interval de cel·les a VBA . Podeu utilitzar un for-loop per a aquest propòsit.
Per exemple, aquí podem conèixer el resultat de tots els estudiants amb un sol codi. Iterarem a través d'un for-loop que comprovarà totes les cel·les de l'interval C3:C12 i retornarà el resultat corresponent, "Aprovat" o “Error” .
El codi VBA per a això serà:
⧭ Codi VBA:
7814
⧭ Sortida:
Executeu el codi des de l'eina Executar sub/Formulari d'usuari a VBA barra d'eines. Tornarà “Aprovat” per a les notes que siguin superiors a 40 , i “Falla” per a aquelles que siguin n 40 .
Coses per recordar
Aquí he mostrat una instrucció If amb una sola condició. Però si voleu, podeu utilitzar diverses condicions dins d'una instrucció If .
Si utilitzeu OR escriviu diverses condicions, uniu-les amb un OR .
I si feu servir AND escriviu diverses condicions, uniu-les amb un I .
Per exemple, per comprovar si la marca de la cel·la B3 és més gran que 40 i menor que 50 o no, utilitzeu:
5073