{"id":681,"date":"2023-09-28T18:49:51","date_gmt":"2023-09-28T18:49:51","guid":{"rendered":"https:\/\/exceladvisor.org\/es\/si-2\/"},"modified":"2023-12-25T10:28:19","modified_gmt":"2023-12-25T10:28:19","slug":"si-2","status":"publish","type":"page","link":"https:\/\/exceladvisor.org\/es\/si-2\/","title":{"rendered":"\u00bfc\u00f3mo utilizar la declaraci\u00f3n if con else en vba?"},"content":{"rendered":"<div class=\"excel-antes-del-contenido\" id=\"excel-1765625485\"><script type=\"text\/javascript\">\r\n\tatOptions = {\r\n\t\t'key' : 'c1158f160081d6540a8409e6925dab94',\r\n\t\t'format' : 'iframe',\r\n\t\t'height' : 250,\r\n\t\t'width' : 300,\r\n\t\t'params' : {}\r\n\t};\r\n<\/script>\r\n<script type=\"text\/javascript\" src=\"\/\/www.highperformanceformat.com\/c1158f160081d6540a8409e6925dab94\/invoke.js\"><\/script><\/div><p>Si desea ser un usuario avanzado de VBA, una declaraci\u00f3n IF es imprescindible. Y creo que ya conoce la palabra SI y la usa con frecuencia como funci\u00f3n de hoja de c\u00e1lculo.<\/p>\n<p> En VBA, IF funciona de la misma manera. Su idea b\u00e1sica es realizar una tarea cuando una condici\u00f3n es VERDADERA; de lo contrario, no hacer nada o hacer otra cosa. Puede escribir tanto de forma sencilla como en condiciones complejas.<\/p>\n<p> Para facilitar la comprensi\u00f3n lo he dividido en tres partes diferentes.<\/p>\n<ul>\n<li> Proporcionado para ser probado.<\/li>\n<li> Una tarea a realizar si la condici\u00f3n es VERDADERA.<\/li>\n<li> Una tarea a realizar si la condici\u00f3n es FALSA.<\/li>\n<\/ul>\n<p> As\u00ed es como se ve en la vida real: <\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/en-utilisant-le-code-dinstruction-VBA-IF-dans-Excel.png\" sizes=\"\" srcset=\"\" alt=\"usando el c\u00f3digo de declaraci\u00f3n IF de VBA en Excel\"><\/figure>\n<\/div>\n<p> En el ejemplo anterior, la lluvia es una condici\u00f3n. Si esta condici\u00f3n es VERDADERA, el ni\u00f1o abrir\u00e1 su paraguas y si la condici\u00f3n es FALSA se pondr\u00e1 su sombrero. Las condiciones son omnipresentes en nuestra vida diaria. Pero ahora volvamos a nuestro mundo de la codificaci\u00f3n y exploremoslo.<\/p>\n<h2 id=\"tab-con-1\" class=\"wp-block-heading\"> Sintaxis: VBA SI<\/h2>\n<p> Tenemos tres tipos diferentes de declaraciones IF en VBA.<\/p>\n<h3 id=\"tab-con-2\" class=\"wp-block-heading\"> 1. SI-Entonces<\/h3>\n<p> SI ENTONCES es la forma m\u00e1s simple de declaraci\u00f3n SI. Todo lo que necesitamos hacer es especificar una condici\u00f3n para verificar y, si esa condici\u00f3n es VERDADERA, realizar\u00e1 una tarea. Pero, si esta condici\u00f3n es FALSA, no har\u00e1 nada y saltar\u00e1 la l\u00ednea al instante.<\/p>\n<h4 class=\"wp-block-heading\"> Sintaxis<\/h4>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">IF condition Then statement[s]<\/code><\/pre>\n<p> En la sintaxis anterior, debemos especificar una condici\u00f3n para evaluar y una tarea para realizar si esa condici\u00f3n es VERDADERA.<\/p>\n<h4 class=\"wp-block-heading\"> Ejemplo <\/h4>\n<p class=\"has-text-align-center\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/vba-if-instruction-utilisant-if-then-macro-code-1.gif\" sizes=\"auto, \" srcset=\"\" alt=\"vba if declaraci\u00f3n usando if entonces c\u00f3digo macro\" width=\"228\" height=\"172\" data-attachment-id=\"7995\"><\/p>\n<p> En el ejemplo anterior, hemos comprobado que la celda A1 contiene el valor 10 y, si es as\u00ed, la declaraci\u00f3n mostrar\u00e1 un cuadro de mensaje con el mensaje \u00abLa celda A1 tiene el valor 10\u00bb.<\/p>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">Sub CheckValue() If Range(\"A1\").Value = 10 Then MsgBox (\"Cell A1 has value 10\") End Sub<\/code><\/pre>\n<h3 id=\"tab-con-3\" class=\"wp-block-heading\"> 2. SI-entonces-si no<\/h3>\n<p> Puede utilizar la instrucci\u00f3n IF-Then-Else cuando desee realizar una tarea espec\u00edfica si una condici\u00f3n es VERDADERA y una tarea diferente si una condici\u00f3n es FALSA.<\/p>\n<h4 class=\"wp-block-heading\"> Sintaxis<\/h4>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">IF Condition Then Statement[s] Else Statement[s] End If<\/code><\/pre>\n<p> Con la sintaxis anterior, podemos realizar diferentes tareas dependiendo del resultado de una condici\u00f3n. Si la condici\u00f3n es VERDADERA, ejecutar\u00e1 la declaraci\u00f3n que mencion\u00f3 despu\u00e9s de \u00abEntonces\u00bb o si la condici\u00f3n es FALSA, ejecutar\u00e1 la declaraci\u00f3n que mencion\u00f3 despu\u00e9s de \u00abSi no\u00bb.<\/p>\n<h4 class=\"wp-block-heading\"> Ejemplo <\/h4>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">Sub CheckValue() If Range(\"A1\").Value = \"10\" Then MsgBox (\"Cell A1 has value 10\") Else MsgBox (\"Cell A1 has a value other than 10\") End Sub<\/code><\/pre>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/vba-if-instruction-utilisant-le-code-de-macro-if-then-else-1.gif\" sizes=\"\" srcset=\"\" alt=\"vba if declaraci\u00f3n usando el c\u00f3digo de macro if then else\"><\/figure>\n<\/div>\n<p> En el ejemplo anterior, utilic\u00e9 la instrucci\u00f3n IF-Then-Else para verificar el valor en la celda A1.<\/p>\n<p> Si la celda A1 tiene un valor de 10, aparecer\u00e1 un cuadro de mensaje que dice \u00abLa celda A1 tiene un valor de 10\u00bb y si hay otro valor en la celda A1, aparecer\u00e1 un cuadro de mensaje que dice \u00abLa celda A1 tiene un valor distinto de 10\u00bb. Entonces aqu\u00ed podemos realizar diferentes tareas seg\u00fan el resultado de la condici\u00f3n.<\/p>\n<h3 id=\"tab-con-4\" class=\"wp-block-heading\"> 3. SI-Entonces-Elseif-Else<\/h3>\n<p> Este es el tipo de IF m\u00e1s \u00fatil e importante que le ayudar\u00e1 a escribir declaraciones de condici\u00f3n avanzadas. En este tipo puede especificar la segunda condici\u00f3n despu\u00e9s de evaluar su primera condici\u00f3n.<\/p>\n<h4 class=\"wp-block-heading\"> Sintaxis<\/h4>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">IF Condition Then Statement[s] Elseif Condition Then Statement[s] Else Statement[s] End If<\/code><\/pre>\n<p> En la sintaxis anterior, tenemos:<\/p>\n<ol>\n<li> En condici\u00f3n de evaluar.<\/li>\n<li> Una instrucci\u00f3n para ejecutar si esta condici\u00f3n es TURE.<\/li>\n<li> Si esta condici\u00f3n es FALSA entonces tenemos la segunda condici\u00f3n para evaluar.<\/li>\n<li> Y, si la segunda condici\u00f3n es VERDADERA, tenemos que hacer una declaraci\u00f3n.<\/li>\n<li> Pero, si ambas condiciones, la primera y la segunda, son FALSAS, har\u00e1 una declaraci\u00f3n que usted mencion\u00f3 despu\u00e9s de \u00abElse\u00bb.<\/li>\n<\/ol>\n<p> Y la mejor parte es que puedes usar cualquier cantidad de \u00abElseif\u00bb en tu c\u00f3digo. Esto significa que puede especificar cualquier n\u00famero de condiciones en su declaraci\u00f3n.<\/p>\n<h4 class=\"wp-block-heading\"> Ejemplo <\/h4>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/vba-if-instruction-utilisant-if-then-elseif-elseif-macro-code-1.gif\" sizes=\"\" srcset=\"\" alt=\"vba if declaraci\u00f3n usando if luego elseif c\u00f3digo de macro elseif\"><\/figure>\n<\/div>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">Sub check_grade() If Range(\"A2\").Value = \"A\" Then MsgBox \"Very Good\" Else If Range(\"A2\").Value = \"B\" Then MsgBox \"Good\" ElseIf Range(\"A2\").Value = \"C\" Then MsgBox \"Average\" ElseIf Range(\"A2\").Value = \"D\" Then MsgBox \"Poor\" ElseIf Range(\"A2\").Value = \"E\" Then MsgBox \"Very Poor\" Else MsgBox \"Enter Correct Grade\" End Sub<\/code><\/pre>\n<p> En el ejemplo anterior, hemos escrito una macro que primero verificar\u00e1 la celda A2 para ver el valor \u00abA\u00bb y si la celda tiene una calificaci\u00f3n de \u00abA\u00bb, la declaraci\u00f3n devolver\u00e1 el mensaje \u00abMuy bueno\u00bb.<\/p>\n<p> Esta instrucci\u00f3n primero verificar\u00e1 la celda A2 para ver el valor \u00abA\u00bb y si la celda tiene una calificaci\u00f3n de \u00abA\u00bb, la instrucci\u00f3n devolver\u00e1 el mensaje \u00abMuy bueno\u00bb.<\/p>\n<p> Y, si la primera condici\u00f3n es FALSA, evaluar\u00e1 la segunda condici\u00f3n y devolver\u00e1 el mensaje \u00abBuena\u00bb si la celda tiene una calificaci\u00f3n de \u00abB\u00bb.<\/p>\n<p> Y, si la segunda condici\u00f3n es falsa, se pasar\u00e1 a la tercera condici\u00f3n, y as\u00ed sucesivamente. En \u00faltima instancia, si las cinco condiciones son falsas, ejecutar\u00e1 el c\u00f3digo que escrib\u00ed despu\u00e9s del resto.<\/p>\n<h2 id=\"tab-con-5\" class=\"wp-block-heading\"> El secreto para escribir una declaraci\u00f3n IF en VBA<\/h2>\n<p> Ahora ya conoces todos los tipos de IS y tambi\u00e9n puedes elegir uno dependiendo de la tarea que necesites realizar. Dejame decirte un secreto.<\/p>\n<h3 id=\"tab-con-6\" class=\"wp-block-heading\"> Declaraci\u00f3n IF de una sola l\u00ednea frente a declaraci\u00f3n IF en bloque<\/h3>\n<p> Puedes escribir una declaraci\u00f3n IF de dos maneras diferentes y ambas tienen ventajas y desventajas. Mira a.<\/p>\n<h4 class=\"wp-block-heading\"> 1. Declaraci\u00f3n de una l\u00ednea<\/h4>\n<p> La declaraci\u00f3n de una l\u00ednea es perfecta si usa la declaraci\u00f3n SI-Entonces. La base para utilizar una declaraci\u00f3n de l\u00ednea es escribir todo el c\u00f3digo en una sola l\u00ednea.<\/p>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">If A1 = 10 Then Msgbox(\"Cell A1 has value 10\")<\/code><\/pre>\n<p> En la declaraci\u00f3n anterior, hemos escrito una declaraci\u00f3n IF para evaluar si la celda A1 tiene un valor de 10, luego mostrar\u00e1 un cuadro de mensaje. La mejor pr\u00e1ctica para utilizar una declaraci\u00f3n de una l\u00ednea es cuando necesita escribir c\u00f3digo simple. Es dif\u00edcil de entender el uso de c\u00f3digo de una l\u00ednea para declaraciones largas y complejas.<\/p>\n<p class=\"qt-tip\"> <strong>Consejo r\u00e1pido:<\/strong> al escribir c\u00f3digo de una sola l\u00ednea, no es necesario utilizar Endif para completar la declaraci\u00f3n.<\/p>\n<h4 class=\"wp-block-heading\"> 2. Declaraci\u00f3n de bloque<\/h4>\n<p> Una declaraci\u00f3n Block es perfecta cuando deseas escribir tu c\u00f3digo de una manera decente y comprensible. Cuando escribe una declaraci\u00f3n de bloque, puede usar varias l\u00edneas en su macro, lo que le brinda un c\u00f3digo limpio y ordenado.<\/p>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">Sub check_value() If Range(\u201cA1\u201d).Value = \u201c10\u201d Then MsgBox (\"Cell A1 has value 10\") Else MsgBox (\"Cell A1 has a value other than 10\") End If End Sub<\/code><\/pre>\n<p> En el ejemplo anterior, hemos escrito una declaraci\u00f3n IF-Then-Else en bloques. Y puede ver que es f\u00e1cil de leer e incluso f\u00e1cil de depurar.<\/p>\n<p> Al escribir instrucciones complejas (lo que definitivamente har\u00e1 despu\u00e9s de leer esta gu\u00eda), las instrucciones en bloque siempre son buenas. Y, mientras escribe declaraciones If anidadas, tambi\u00e9n puede agregar sangr\u00eda en su l\u00ednea para mayor claridad.<\/p>\n<p class=\"qt-tip\"> <strong>Consejo r\u00e1pido<\/strong> : tiene una excepci\u00f3n que puede ignorar usando Else al final de su c\u00f3digo cuando usa IF-Then-Elseif-Else. Esto es muy \u00fatil cuando no necesita realizar ninguna tarea cuando ninguna de las condiciones es VERDADERA en su declaraci\u00f3n.<\/p>\n<h2 id=\"tab-con-7\" class=\"wp-block-heading\"> 8 ejemplos concretos<\/h2>\n<p> Aqu\u00ed he enumerado algunos ejemplos simples pero \u00fatiles que puedes seguir.<\/p>\n<h3 id=\"tab-con-8\" class=\"wp-block-heading\"> 1. SI anidado<\/h3>\n<p> La mejor parte de la declaraci\u00f3n IF es que crea declaraciones anidadas. Puede agregar una segunda condici\u00f3n a la primera condici\u00f3n. <\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/ecriture-imbrication-si-avec-vba-if-instruction-1.gif\" sizes=\"\" srcset=\"\" alt=\"escribiendo anidamiento if con vba if declaraci\u00f3n\"><\/figure>\n<\/div>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">Sub NestIF() Dim res As Long res = MsgBox(\"Do you want to save this file?\", vbYesNo, \"Save File\") If res = vbYes Then 'start of first IF statement If ActiveWorkbook.Saved &lt;&gt; True Then 'start of second IF statement. ActiveWorkbook.SaveMsgBox (\"Workbook Saved\") Else MsgBox \"This workbook is already saved\" End If 'end of second IF statement Else MsgBox \"Make Sure to save it later\" End If ' end of first IF statement End Sub<\/code><\/pre>\n<p> En el ejemplo anterior, utilizamos una declaraci\u00f3n IF anidada. Cuando <a href=\"https:\/\/exceladvisor.org\/es\/ejecutar-una-macro-2\/\">ejecute esta macro<\/a> , <a href=\"https:\/\/exceladvisor.org\/es\/cuadro-de-mensajes-vba\/\">aparecer\u00e1 un cuadro de mensaje<\/a> con las opciones Aceptar y Cancelar. Despu\u00e9s de eso comienza el trabajo del enunciado condicional.<\/p>\n<p> Primero, evaluar\u00e1 el bot\u00f3n en el que hizo clic. Si hizo clic en \u00abS\u00ed\u00bb, an\u00eddelo para evaluar si su hoja de c\u00e1lculo se guarda o no.<\/p>\n<p> Si su libro de trabajo no se guarda, lo guardar\u00e1 y recibir\u00e1 un mensaje. Y, si el libro ya est\u00e1 guardado, mostrar\u00e1 un mensaje al respecto.<\/p>\n<p> Pero si hace clic en el bot\u00f3n, la condici\u00f3n de la primera macro ser\u00e1 FALSA y solo recibir\u00e1 un mensaje para guardar su libro m\u00e1s tarde.<\/p>\n<p> La idea b\u00e1sica en este c\u00f3digo es que la segunda condici\u00f3n depende totalmente de la primera condici\u00f3n. Si la primera condici\u00f3n es FALSA, la segunda condici\u00f3n no ser\u00e1 evaluada.<\/p>\n<p> M\u00e1s informaci\u00f3n sobre <strong><a href=\"https:\/\/exceladvisor.org\/es\/nido-si\/\">IF anidado<\/a><\/strong><\/p>\n<h3 id=\"tab-con-9\" class=\"wp-block-heading\"> 2. Crea un bucle con IF y GoTo<\/h3>\n<p> Tambi\u00e9n puedes crear un bucle usando goto con IF. La mayor\u00eda de los programadores evitan escribir bucles de esta manera porque tenemos <a href=\"https:\/\/exceladvisor.org\/es\/bucles\/\">mejores formas de hacerlo<\/a> . Pero no hay nada de malo en aprender c\u00f3mo podemos hacerlo.<\/p>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">Sub auto_open() Alert: If InputBox(\"Enter Username\") &lt;&gt; \"Puneet\" Then GoTo Alert Else MsgBox \"Welcome\" End If End Sub<\/code><\/pre>\n<p> En el ejemplo anterior, utilizamos una declaraci\u00f3n de condici\u00f3n para crear un bucle. Usamos auto_open como nombre de la macro para que cada vez que alguien abra el archivo, ejecute esta macro.<\/p>\n<p> El usuario debe ingresar un nombre de usuario y si ese nombre de usuario no es igual a \u00abPuneet\u00bb, repetir\u00e1 el c\u00f3digo y mostrar\u00e1 el cuadro de entrada nuevamente. Y, si ingresa el texto correcto, podr\u00e1 acceder al archivo.<\/p>\n<h3 id=\"tab-con-10\" class=\"wp-block-heading\"> 3. Comprueba si una celda contiene un n\u00famero.<\/h3>\n<p> Aqu\u00ed hemos utilizado una condici\u00f3n para comprobar si la <a href=\"https:\/\/exceladvisor.org\/es\/celula-activa\/\">celda activa<\/a> contiene un valor num\u00e9rico o no. <\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/utiliser-linstruction-vba-if-pour-verifier-le-nombre-dans-la-cellule-1.gif\" sizes=\"\" srcset=\"\" alt=\"use la declaraci\u00f3n vba if para verificar el n\u00famero en la celda\"><\/figure>\n<\/div>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">Sub check_number() If IsNumeric(Range(\"B2\").Value) Then MsgBox \"Yes, active cell has a number.\" Else MsgBox \"No, active cell hasn't a number.\" End If End Sub<\/code><\/pre>\n<p> En el ejemplo anterior, escrib\u00ed una condici\u00f3n usando la <a href=\"https:\/\/exceladvisor.org\/es\/isnumerico\/\">funci\u00f3n isnumeric<\/a> en VBA, que es la misma que la funci\u00f3n num\u00e9rica en la hoja de trabajo para verificar si el valor de una celda es un n\u00famero o no.<\/p>\n<p> Si el valor es un n\u00famero, devolver\u00e1 VERDADERO y recibir\u00e1 el mensaje \u00abS\u00ed, la celda activa tiene un valor num\u00e9rico\u00bb. Y, si el valor no es un n\u00famero, recibir\u00e1 el mensaje \u00abNo hay valor num\u00e9rico en la celda activa\u00bb.<\/p>\n<h3 id=\"tab-con-11\" class=\"wp-block-heading\"> 4. Utilice OR y AND con IF<\/h3>\n<p> Usando <strong><a href=\"https:\/\/exceladvisor.org\/es\/yo-para\/\">IF OR,<\/a><\/strong> puede especificar dos o m\u00e1s condiciones y realizar una tarea si al menos una condici\u00f3n es VERDADERA entre todas.<\/p>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">Sub UsingOR() If Range(\"A1\") &lt; 70 Or Range(\"B1\") &lt; 70 Then MsgBox \"You Are Pass\" Else If Range(\"A1\") &lt; 40 And Range(\"B1\") &lt; 40 Then MsgBox \"You Are Pass\" Else MsgBox \"You Are Fail\" End If End If End Sub<\/code><\/pre>\n<p> En el ejemplo anterior, en la l\u00ednea 2, tenemos dos condiciones que usan OR. Si un alumno obtiene 70 puntos en alguna de las materias, el resultado ser\u00e1 \u201cAprobado\u201d. Y en la l\u00ednea 7 tenemos dos condiciones usando el operador AND. Si un estudiante obtiene m\u00e1s de 40 puntos en ambas materias, el resultado ser\u00e1 \u201cAprobado\u201d.<\/p>\n<p> Usando <strong><a href=\"https:\/\/exceladvisor.org\/es\/si-y\/\">IF AND<\/a><\/strong> puede especificar m\u00faltiples condiciones y realizar una tarea si todas las condiciones son VERDADERAS.<\/p>\n<h3 id=\"tab-con-12\" class=\"wp-block-heading\"> 5. No utilizar con IF<\/h3>\n<p> Al usar NOT en una condici\u00f3n, puede cambiar VERDADERO a FALSO y FALSO a VERDADERO.<\/p>\n<p> <a href=\"https:\/\/exceladvisor.org\/es\/de-lo-contrario\/\"><strong>VBA SI NO<\/strong><\/a><\/p>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">Sub IF_Not() If Range(\u201cD1\u201d) &lt;= 40 And Not Range(\u201cE1\u201d) = \u201cE\u201d Then MsgBox \"You Are Pass.\" Else MsgBox \"You Are Fail.\" End If End Sub<\/code><\/pre>\n<p> En el ejemplo anterior, hemos usado NOT en la condici\u00f3n. Tenemos dos celdas con la puntuaci\u00f3n del sujeto. En una celda la puntuaci\u00f3n est\u00e1 en n\u00fameros y en otra celda tiene calificaciones.<\/p>\n<ul>\n<li> Si un estudiante tiene calificaciones superiores a 40 en la primera materia y superiores a la calificaci\u00f3n E en la segunda materia, es un APROBADO.<\/li>\n<li> Si un estudiante tiene calificaciones superiores a 40 en la primera materia y superiores a la calificaci\u00f3n E en la segunda materia, es APROBADO.<\/li>\n<\/ul>\n<p> Por lo tanto, cada vez que las calificaciones de un estudiante sean superiores a 40 y una calificaci\u00f3n distinta de E, recibiremos un mensaje de \u00abAprobaste\u00bb o \u00abReprobaste\u00bb.<\/p>\n<h3 id=\"tab-con-13\" class=\"wp-block-heading\"> 6. Declaraci\u00f3n IF con una casilla de verificaci\u00f3n<\/h3>\n<p> Ahora aqu\u00ed usamos una casilla de verificaci\u00f3n para ejecutar una macro. <\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/en-utilisant-linstruction-vba-if-avec-case-a-cocher-1.gif\" sizes=\"auto, \" srcset=\"\" alt=\"usando vba if declaraci\u00f3n con casilla de verificaci\u00f3n\" width=\"683\" height=\"153\"><\/figure>\n<\/div>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">Sub ship_as_bill() If Range(\"D15\") = True Then Range(\"D17:D21\") = Range(\"C17:C21\") Else If Range(\u201cD15\u201d) = False Then Range(\"D17:D21\").ClearContents Else MsgBox (\u201cError!\u201d) End If End If End Sub<\/code><\/pre>\n<p> En el ejemplo anterior, utilizamos una declaraci\u00f3n IF para crear una condici\u00f3n seg\u00fan la cual, si la casilla de verificaci\u00f3n est\u00e1 marcada, el rango D17:D21 es igual al rango C17:C21. Y, si la <a href=\"https:\/\/exceladvisor.org\/es\/casilla-de-verificacion\/\">casilla<\/a> no est\u00e1 marcada, el rango D17:D21 estar\u00e1 vac\u00edo.<\/p>\n<p> Usando esta t\u00e9cnica podemos usar la direcci\u00f3n de facturaci\u00f3n como direcci\u00f3n de env\u00edo y si necesitamos algo m\u00e1s podemos ingresar la direcci\u00f3n manualmente.<\/p>\n<h3 id=\"tab-con-14\" class=\"wp-block-heading\"> 7. Comprueba si una celda est\u00e1 fusionada.<\/h3>\n<p> Y aqu\u00ed escribimos una condici\u00f3n para recibir una alerta si se fusiona una celda activa. <\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/verifier-si-une-cellule-est-fusionnee-a-laide-de-linstruction-vba-if-1.gif\" sizes=\"\" srcset=\"\" alt=\"comprobar si una celda est\u00e1 fusionada usando la declaraci\u00f3n vba if\"><\/figure>\n<\/div>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">Sub MergeCellCheck() If ActiveCell.MergeCells Then MsgBox \"Active Cell Is Merged\" Else MsgBox \"Active Cell Is Not Merged\" End If End Sub<\/code><\/pre>\n<p> En el c\u00f3digo anterior, hemos utilizado <a href=\"https:\/\/exceladvisor.org\/es\/unir\/\">celdas fusionadas<\/a> para comprobar si la celda activa est\u00e1 fusionada o no. Si la <a href=\"https:\/\/exceladvisor.org\/es\/celda-activa-1\/\">celda activa<\/a> se fusiona, la condici\u00f3n devolver\u00e1 <a href=\"https:\/\/exceladvisor.org\/es\/cuadro-de-mensajes-vba\/\">una alerta para esto<\/a> .<\/p>\n<h3 id=\"tab-con-15\" class=\"wp-block-heading\"> 8. Elimina toda la fila si una celda est\u00e1 vac\u00eda.<\/h3>\n<p> Aqu\u00ed usamos IF para verificar si una fila est\u00e1 vac\u00eda o no. Y, si esta l\u00ednea est\u00e1 vac\u00eda, la declaraci\u00f3n eliminar\u00e1 esa l\u00ednea en particular.<\/p>\n<pre class=\"wp-block-code\"> <code class=\"language-visual-basic\" lang=\"visual-basic\">Sub DeleteRow() If Application.CountA(ActiveCell.EntireRow) = 0 Then ActiveCell.EntireRow.Delete Else MsgBox Application.CountA(ActiveCell.EntireRow) &amp; \"Cell(s) have values in this row\" End If End Sub<\/code><\/pre>\n<p> En el ejemplo anterior, primero verificar\u00e1 las celdas que tienen un valor. Si el n\u00famero de celdas con un valor es cero, la condici\u00f3n eliminar\u00e1 la fila activa, de lo contrario devolver\u00e1 la alerta indicando el n\u00famero de celdas con un valor.<\/p>\n<h2 class=\"wp-block-heading\"> Conclusi\u00f3n<\/h2>\n<p> Como dije, esta es una de las partes m\u00e1s importantes de VBA y debes aprenderla si quieres dominar VBA. Con la declaraci\u00f3n IF, puede escribir c\u00f3digos simples y complejos. Tambi\u00e9n puede utilizar operadores l\u00f3gicos y escribir condiciones anidadas.<\/p>\n<p> Espero que esta gu\u00eda te ayude a escribir mejores c\u00f3digos.<\/p>\n<p> Ahora dime esto. \u00bfEscribes condiciones con frecuencia en VBA? \u00bfQu\u00e9 tipo de c\u00f3digos escribes? Por favor comparta sus puntos de vista conmigo en la secci\u00f3n de comentarios. Y no olvides compartir esta gu\u00eda con tus amigos.<\/p>\n<div class=\"gb-container gb-container-4db6181c gb-container-mt\"> <a class=\"gb-button gb-button-c5897111 gb-button-text gb-button-mt-button\" href=\"https:\/\/exceladvisor.org\/es\/vba\/\">\u00bfQu\u00e9 es VBA?<\/a><\/p>\n<h2 class=\"gb-headline gb-headline-665e5f6b gb-headline-text gb-headline-mt-heading\"> Tutoriales relacionados <\/h2>\n<div class=\"gb-grid-wrapper gb-grid-wrapper-a20baf7c gb-grid-wrapper-mt-grid\">\n<div class=\"gb-grid-column gb-grid-column-65ddf67e\">\n<div class=\"gb-container gb-container-65ddf67e\">\n<ul>\n<li> <a href=\"https:\/\/exceladvisor.org\/es\/salir-si\/\">VBA Salir SI<\/a><\/li>\n<li> <a href=\"https:\/\/exceladvisor.org\/es\/si-y\/\">VBA SI y<\/a><\/li>\n<li> <a href=\"https:\/\/exceladvisor.org\/es\/de-lo-contrario\/\">VBA SI NO<\/a><\/li>\n<li> <a href=\"https:\/\/exceladvisor.org\/es\/yo-para\/\">VBA SI O<\/a><\/li>\n<li> <a href=\"https:\/\/exceladvisor.org\/es\/nido-si\/\">VBA anidado SI<\/a> <\/li>\n<\/ul>\n<\/div>\n<\/div>\n<div class=\"gb-grid-column gb-grid-column-50067b57\">\n<div class=\"gb-container gb-container-50067b57\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Si desea ser un usuario avanzado de VBA, una declaraci\u00f3n IF es imprescindible. Y creo que ya conoce la palabra SI y la usa con frecuencia como funci\u00f3n de hoja de c\u00e1lculo. En VBA, IF funciona de la misma manera. Su idea b\u00e1sica es realizar una tarea cuando una condici\u00f3n es VERDADERA; de lo contrario, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"ub_ctt_via":"","footnotes":""},"class_list":["post-681","page","type-page","status-publish","hentry"],"featured_image_src":null,"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u00bfc\u00f3mo utilizar la declaraci\u00f3n if con else en vba?<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/exceladvisor.org\/es\/si-2\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u00bfc\u00f3mo utilizar la declaraci\u00f3n if con else en vba?\" \/>\n<meta property=\"og:description\" content=\"Si desea ser un usuario avanzado de VBA, una declaraci\u00f3n IF es imprescindible. Y creo que ya conoce la palabra SI y la usa con frecuencia como funci\u00f3n de hoja de c\u00e1lculo. En VBA, IF funciona de la misma manera. Su idea b\u00e1sica es realizar una tarea cuando una condici\u00f3n es VERDADERA; de lo contrario, [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/exceladvisor.org\/es\/si-2\/\" \/>\n<meta property=\"og:site_name\" content=\"Excel Advisor\" \/>\n<meta property=\"article:modified_time\" content=\"2023-12-25T10:28:19+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/en-utilisant-le-code-dinstruction-VBA-IF-dans-Excel.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data1\" content=\"13 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/exceladvisor.org\/es\/si-2\/\",\"url\":\"https:\/\/exceladvisor.org\/es\/si-2\/\",\"name\":\"\u00bfc\u00f3mo utilizar la declaraci\u00f3n if con else en vba?\",\"isPartOf\":{\"@id\":\"https:\/\/exceladvisor.org\/es\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/exceladvisor.org\/es\/si-2\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/exceladvisor.org\/es\/si-2\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/en-utilisant-le-code-dinstruction-VBA-IF-dans-Excel.png\",\"datePublished\":\"2023-09-28T18:49:51+00:00\",\"dateModified\":\"2023-12-25T10:28:19+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/exceladvisor.org\/es\/si-2\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/exceladvisor.org\/es\/si-2\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/exceladvisor.org\/es\/si-2\/#primaryimage\",\"url\":\"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/en-utilisant-le-code-dinstruction-VBA-IF-dans-Excel.png\",\"contentUrl\":\"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/en-utilisant-le-code-dinstruction-VBA-IF-dans-Excel.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/exceladvisor.org\/es\/si-2\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Hogar\",\"item\":\"https:\/\/exceladvisor.org\/es\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u00bfc\u00f3mo utilizar la declaraci\u00f3n if con else en vba?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/exceladvisor.org\/es\/#website\",\"url\":\"https:\/\/exceladvisor.org\/es\/\",\"name\":\"Excel Advisor\",\"description\":\"Su gu\u00eda para la dominaci\u00f3n de datos!\",\"publisher\":{\"@id\":\"https:\/\/exceladvisor.org\/es\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/exceladvisor.org\/es\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/exceladvisor.org\/es\/#organization\",\"name\":\"Excel Advisor\",\"url\":\"https:\/\/exceladvisor.org\/es\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/exceladvisor.org\/es\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/exceladvisor.org\/es\/wp-content\/uploads\/2023\/12\/exceladvisor.org_.png\",\"contentUrl\":\"https:\/\/exceladvisor.org\/es\/wp-content\/uploads\/2023\/12\/exceladvisor.org_.png\",\"width\":105,\"height\":36,\"caption\":\"Excel Advisor\"},\"image\":{\"@id\":\"https:\/\/exceladvisor.org\/es\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u00bfc\u00f3mo utilizar la declaraci\u00f3n if con else en vba?","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/exceladvisor.org\/es\/si-2\/","og_locale":"es_ES","og_type":"article","og_title":"\u00bfc\u00f3mo utilizar la declaraci\u00f3n if con else en vba?","og_description":"Si desea ser un usuario avanzado de VBA, una declaraci\u00f3n IF es imprescindible. Y creo que ya conoce la palabra SI y la usa con frecuencia como funci\u00f3n de hoja de c\u00e1lculo. En VBA, IF funciona de la misma manera. Su idea b\u00e1sica es realizar una tarea cuando una condici\u00f3n es VERDADERA; de lo contrario, [&hellip;]","og_url":"https:\/\/exceladvisor.org\/es\/si-2\/","og_site_name":"Excel Advisor","article_modified_time":"2023-12-25T10:28:19+00:00","og_image":[{"url":"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/en-utilisant-le-code-dinstruction-VBA-IF-dans-Excel.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Tiempo de lectura":"13 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/exceladvisor.org\/es\/si-2\/","url":"https:\/\/exceladvisor.org\/es\/si-2\/","name":"\u00bfc\u00f3mo utilizar la declaraci\u00f3n if con else en vba?","isPartOf":{"@id":"https:\/\/exceladvisor.org\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/exceladvisor.org\/es\/si-2\/#primaryimage"},"image":{"@id":"https:\/\/exceladvisor.org\/es\/si-2\/#primaryimage"},"thumbnailUrl":"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/en-utilisant-le-code-dinstruction-VBA-IF-dans-Excel.png","datePublished":"2023-09-28T18:49:51+00:00","dateModified":"2023-12-25T10:28:19+00:00","breadcrumb":{"@id":"https:\/\/exceladvisor.org\/es\/si-2\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/exceladvisor.org\/es\/si-2\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/exceladvisor.org\/es\/si-2\/#primaryimage","url":"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/en-utilisant-le-code-dinstruction-VBA-IF-dans-Excel.png","contentUrl":"https:\/\/exceladvisor.org\/wp-content\/uploads\/2023\/08\/en-utilisant-le-code-dinstruction-VBA-IF-dans-Excel.png"},{"@type":"BreadcrumbList","@id":"https:\/\/exceladvisor.org\/es\/si-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Hogar","item":"https:\/\/exceladvisor.org\/es\/"},{"@type":"ListItem","position":2,"name":"\u00bfc\u00f3mo utilizar la declaraci\u00f3n if con else en vba?"}]},{"@type":"WebSite","@id":"https:\/\/exceladvisor.org\/es\/#website","url":"https:\/\/exceladvisor.org\/es\/","name":"Excel Advisor","description":"Su gu\u00eda para la dominaci\u00f3n de datos!","publisher":{"@id":"https:\/\/exceladvisor.org\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/exceladvisor.org\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/exceladvisor.org\/es\/#organization","name":"Excel Advisor","url":"https:\/\/exceladvisor.org\/es\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/exceladvisor.org\/es\/#\/schema\/logo\/image\/","url":"https:\/\/exceladvisor.org\/es\/wp-content\/uploads\/2023\/12\/exceladvisor.org_.png","contentUrl":"https:\/\/exceladvisor.org\/es\/wp-content\/uploads\/2023\/12\/exceladvisor.org_.png","width":105,"height":36,"caption":"Excel Advisor"},"image":{"@id":"https:\/\/exceladvisor.org\/es\/#\/schema\/logo\/image\/"}}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"_links":{"self":[{"href":"https:\/\/exceladvisor.org\/es\/wp-json\/wp\/v2\/pages\/681","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/exceladvisor.org\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/exceladvisor.org\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/exceladvisor.org\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/exceladvisor.org\/es\/wp-json\/wp\/v2\/comments?post=681"}],"version-history":[{"count":1,"href":"https:\/\/exceladvisor.org\/es\/wp-json\/wp\/v2\/pages\/681\/revisions"}],"predecessor-version":[{"id":1293,"href":"https:\/\/exceladvisor.org\/es\/wp-json\/wp\/v2\/pages\/681\/revisions\/1293"}],"wp:attachment":[{"href":"https:\/\/exceladvisor.org\/es\/wp-json\/wp\/v2\/media?parent=681"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}