Funció VBA O (exemples) | Com s'utilitza OR Operator lògic a VBA?

O és una funció lògica en qualsevol dels llenguatges de programació i similar a VBA tenim una funció OR, ja que és una funció lògica el resultat donat per aquesta funció és veritable o fals, aquesta funció s'utilitza per a dues o moltes condicions juntes i dóna ens resulta cert quan qualsevol de les condicions es torna veritable.

Què és la funció OR a VBA?

A Excel, les funcions lògiques són el cor de les fórmules que fem servir diàriament. Hi ha funcions lògiques per dur a terme la prova lògica i dóna com a resultat un tipus de dades booleanes, és a dir, TRUE o FALSE. Algunes de les fórmules lògiques a Excel són "IF, IFERROR a excel, ISERROR a excel, AND i la funció OR excel". Espero que els hàgiu utilitzat força sovint com a funció de full de càlcul. També a VBA podem utilitzar-los tots i, en aquest article, us explicarem les maneres d’utilitzar la funció “VBA OR”.

Què és el primer que et ve al cap quan penses en la paraula "O"?

En termes simples, "O" significa "O això o allò"

Amb la mateixa idea, OR és una funció lògica que dóna el resultat com a TRUE si alguna de les proves lògiques és TRUE i dóna FALSE com a resultat si cap de les proves lògiques és TRUE.

Això funciona exactament oposat a la funció VBA AND. La funció AND només retorna TRUE si totes les condicions lògiques són TRUE, si alguna de les condicions no es compleix, obtindrem FALS com a resultat.

Fórmula de la funció VBA O

Permeteu-me emmarcar una sintaxi perquè entengueu la funció.

[Prova lògica] O [Prova lògica] O [Prova lògica]

En primer lloc, hem d’esmentar quina és la prova lògica, a continuació, esmentar la paraula OR o després esmentar quina és la segona prova lògica. Si voleu realitzar una prova més lògica, mencioneu la paraula OR després de provar la prova lògica.

Desactivades totes les proves lògiques que feu, si algú de les proves està satisfet o és cert, obtindrem el resultat com a VERITAT si no n'hi ha cap o està satisfet, el resultat és FALS.

Exemples d'ús de la funció OR a VBA

Us mostrarem un exemple senzill d’utilitzar la funció OR a VBA.

Podeu descarregar aquesta plantilla VBA OR Excel aquí: plantilla VBA OR Excel

Per entendre la funció lògica de VBA O deixeu-me donar-vos un exemple. Suposem que volem fer la prova lògica si el número 25 és superior a 20 o el número 50 és inferior a 30.

Pas 1: Creeu un nom de macro.

Pas 2: Definiu la variable com una cadena.

Codi:

 Sub OR_Example1 () Dim i As String End Sub 

Pas 3: Ara, per a aquesta variable, assignarem el valor mitjançant la prova lògica OR.

Codi:

 Sub OR_Example1 () Dim i As String i = End Sub 

Pas 4: La nostra primera prova lògica és 25 >20.

Codi:

 Sub OR_Example1 () Dim i As String i = 25> 20 End Sub 

Pas 5: Ara, després de la primera prova lògica, mencioneu la paraula O i introduïu la segona prova lògica.

Codi:

 Sub OR_Example1 () Dim i As String i = 25> 20 O 50 <30 End Sub 

Pas 6: D’acord, ara la funció VBA O prova si les proves lògiques són TRUE o FALSE. Ara assigneu el resultat de la variable al VBA quadre de missatge.

Codi:

 Sub OR_Example1 () Dim i As String i = 25> 20 O 50 <30 MsgBox i End Sub 

Pas 7: Executeu la macro i quin és el resultat.

Hem obtingut el resultat com a CERT perquè de dues proves lògiques hem proporcionat una prova és CERT, de manera que el resultat és CERT.

25 és superior a 20 i 50 no és inferior a 30, en aquest cas, la primera prova lògica és CERT però la segona és FALS. Com que hem aplicat la funció VBA O, necessita qualsevol de les condicions per ser TRUE per obtenir el resultat com a TRUE.

Ara mireu el codi següent.

Codi:

 Sub OR_Example1 () Dim i As String i = 25 = 20 O 50 = 30 MsgBox i End Sub 

He canviat les equacions de prova lògica de> i <a signe igual (=). Això retornarà FALS com a resultat perquè 25 no és igual a 20 i 50 no és igual a 30.

La funció VBA O amb la condició IF és potent

Com he dit, OR pot retornar TRUE o FALSE com a resultat, però amb l'altra funció lògica "SI", podem manipular els resultats segons les nostres necessitats.

Feu les mateixes proves lògiques de dalt; OR només ha retornat TRUE o FALSE, però combinem aquest OR amb IF.

Pas 1: Abans de realitzar qualsevol prova, obriu la funció SI.

Codi:

 Sub OR_Example2 () Dim i As String IF End Sub 

Pas 2: Ara realitzeu proves amb el fitxer O funció.

Codi:

 Sub OR_Example2 () Dim i As String IF 25 = 20 O 50 = 30 End Sub 

Pas 3: Poseu la paraula "Aleshores" i escriviu el resultat si la condició és TRUE, assigneu el valor a la variable com "La condició està satisfeta".

Codi:

 Sub OR_Example2 () Dim i As String If 25 = 20 O 50 = 30 Aleshores i = "La condició està satisfeta" Final Sub 

Pas 4: Si la condició és FALS, necessitem un resultat diferent, així que poseu la paraula "ELSE" i a la línia següent assigneu el valor a la variable "quin hauria de ser el resultat si la condició o la prova lògica són FALSES".

Codi:

 Sub OR_Example2 () Dim i As String If 25 = 20 Or 50 = 30 Then i = "La condició està satisfeta" Altrament i = "La condició no està satisfeta" Final Sub 

Pas 5: Acabeu la funció IF amb la paraula "Finalitza si".

Codi:

 Sub OR_Example2 () Dim i As String If 25 = 20 Or 50 = 30 Then i = "La condició està satisfeta" Altrament i = "La condició no està satisfeta" Finalitza si finalitza Sub 

Pas 6: Assigneu el valor del resultat variable al fitxer quadre de missatge.

Codi:

 Sub OR_Example2 () Dim i As String If 25 = 20 Or 50 = 30 Then i = "La condició està satisfeta" Altres i = "La condició no està satisfeta" Finalitza si MsgBox i Finalitza la sub 

Executeu la macro, si la prova lògica és TRUE obtindrem el resultat com a "La condició està satisfeta" o bé obtindrem "La condició no està satisfeta".

Vam obtenir el resultat com "La condició no està satisfeta" perquè les dues proves lògiques són FALSES.

Ara canviaré les proves lògiques.

Codi:

 Sub OR_Example2 () Dim i As String If 25> 20 Or 50 <30 Then i = "Condition is Satisfied" Else i = "La condició no està satisfeta" Finalitza si MsgBox i End Sub 

Executaré la macro i veuré quin és el resultat.

Així, podem utilitzar una funció lògica amb altres funcions lògiques per arribar als resultats.

Resol el següent cas d’estudi per acostumar-te a les funcions lògiques.

Estudi de cas per resoldre

Tinc noms d'empleats i els seus departaments respectius.

Si heu provat i no heu trobat el resultat, podeu consultar el codi següent per entendre la lògica.

Codi:

 Sub Bonus_Calculation () Dim i As Long For i = 2 to 10 If Cells (i, 2) .Value = "Finance" or Cells (i, 2) .Value = "IT" Then Cells (i, 3) .Value = 5.000 cèl·lules més (i, 3). Valor = 1000 Fi si següent Finalitzo sub 

Si l'empleat és de "Finances" o "IT", hauria d'obtenir la bonificació com a "5000". Per a altres empleats del departament, la bonificació és de "1000".

Realitzeu la prova lògica i arribeu als resultats.