Cómo programar una reunión de Skype
Aprenda a programar reuniones efectivas en Skype Empresarial desde Outlook o la aplicación de Skype. Siga nuestros sencillos pasos para una mejor colaboración.
If-Then es la estructura de control más importante de VBA. Probablemente usará este comando a diario. Utilice la estructura If-Then cuando desee ejecutar una o más declaraciones de forma condicional. La cláusula Else opcional, si se incluye, le permite ejecutar una o más declaraciones si la condición que está probando no es verdadera. Aquí hay un procedimiento CheckUser simple, recodificado para usar la estructura If-Then-Else:
Sub CheckUser2 () UserName = InputBox ("Ingrese su nombre:") Si UserName = "Satya Nadella", entonces MsgBox ("Bienvenido Satya ...") '... [Más código aquí] ... Demás MsgBox “Lo siento. Solo Satya Nadella puede ejecutar esto ". Terminara si End Sub
La siguiente rutina demuestra la estructura If-Then sin la cláusula Else opcional:
Sub GreetMe () Si el tiempo <0.5, entonces MsgBox "Buenos días" End Sub
El procedimiento GreetMe usa la función Time de VBA para obtener la hora del sistema. Si la hora actual es inferior a 0,5, la rutina muestra un saludo amistoso. Si el tiempo es mayor o igual a 0,5, la rutina finaliza y no ocurre nada.
Para mostrar un saludo diferente si el tiempo es mayor o igual a .5, puede agregar otra instrucción If-Then después de la primera:
Sub GreetMe2 () Si el tiempo <0.5, entonces MsgBox "Buenos días" Si Time> = 0.5, entonces MsgBox "Buenas tardes" End Sub
Observe que> = (mayor o igual que) se usa para la segunda instrucción If-Then. Esto asegura que todo el día esté cubierto. Si se hubiera utilizado> (mayor que), no aparecería ningún mensaje si este procedimiento se ejecutara precisamente a las 12:00 del mediodía. Eso es bastante improbable, pero con un programa importante como este, no querrá correr riesgos.
Otro enfoque del problema anterior utiliza la cláusula Else. Aquí está la misma rutina recodificada para usar la estructura If-Then-Else:
Sub GreetMe3 () Si el tiempo <0.5, entonces MsgBox "Buenos días" Else _ MsgBox "Buenas tardes" End Sub
Observe que el carácter de continuación de línea (guión bajo) se usa en el ejemplo anterior. La declaración If-Then-Else es en realidad una declaración única. VBA proporciona una forma ligeramente diferente de codificar construcciones If-Then-Else que usan una instrucción End If. Por lo tanto, el procedimiento de GreetMe se puede reescribir como
Sub GreetMe4 () Si el tiempo <0.5 entonces MsgBox "Buenos días" Demás MsgBox "Buenas tardes" Terminara si End Sub
De hecho, puede insertar cualquier número de declaraciones en la parte If y cualquier número de declaraciones en la parte Else. Esta sintaxis es más fácil de leer y hace que las declaraciones sean más cortas.
¿Qué sucede si necesita expandir la rutina GreetMe para manejar tres condiciones: mañana, tarde y noche? Tiene dos opciones: usar tres declaraciones If-Then o usar una estructura If-Then-Else anidada . Anidar significa colocar una estructura If-Then-Else dentro de otra estructura If-Then-Else. El primer enfoque, que utiliza tres declaraciones If-Then, es más simple:
Sub GreetMe5 () Dim Msg como cadena Si el tiempo <0,5, entonces Msg = "Mañana" Si la hora> = 0,5 y la hora <0,75, entonces Msj = "Tarde" Si Hora> = 0,75, entonces Msj = "Tarde" MsgBox "Bueno" y Msg End Sub
Se agregó un nuevo giro con el uso de una variable. La variable Msg obtiene un valor de texto diferente, según la hora del día. La declaración MsgBox muestra el saludo: Buenos días, Buenas tardes o Buenas noches.
La siguiente rutina realiza la misma acción pero usa una estructura If-Then-End If:
Sub GreetMe6 () Dim Msg como cadena Si el tiempo <0.5 entonces Msg = "Mañana" Terminara si Si el tiempo> = 0,5 y el tiempo <0,75, entonces Msg = "Tarde" Terminara si Si el tiempo> = 0,75 entonces Msg = "Tarde" Terminara si MsgBox "Bueno" y Msg End Sub
En los ejemplos anteriores, se ejecuta cada declaración de la rutina. Una estructura un poco más eficiente saldría de la rutina tan pronto como se determinara que una condición es verdadera. Por la mañana, por ejemplo, el procedimiento debe mostrar el mensaje Buenos días y luego salir, sin evaluar las otras condiciones superfluas.
Con una pequeña rutina como esta, no tiene que preocuparse por la velocidad de ejecución. Pero para aplicaciones más grandes en las que la velocidad es crítica, debe conocer otra sintaxis para la estructura If-Then.
Así es como puede reescribir la rutina GreetMe usando esta sintaxis:
Sub GreetMe7 () Dim Msg como cadena Si el tiempo <0.5 entonces Msg = "Mañana" ElseIf Time> = 0.5 And Time <0.75 Entonces Msg = "Tarde" Demás Msg = "Tarde" Terminara si MsgBox "Bueno" y Msg End Sub
Cuando una condición es verdadera, VBA ejecuta las declaraciones condicionales y la estructura If finaliza. En otras palabras, este procedimiento es un poco más eficiente que los ejemplos anteriores. La compensación es que el código es más difícil de entender.
Aquí hay otro ejemplo que usa la forma simple de la estructura If-Then. Este procedimiento solicita al usuario una cantidad y luego muestra el descuento correspondiente, según la cantidad que ingresa el usuario:
Sub ShowDiscount () Dim Cantidad tan larga Descuento tenue como doble Cantidad = InputBox ("Ingresar cantidad:") Si Cantidad> 0 Entonces Descuento = 0.1 Si Cantidad> = 25 Entonces Descuento = 0.15 Si Cantidad> = 50 Entonces Descuento = 0.2 Si Cantidad> = 75 Entonces Descuento = 0.25 MsgBox "Descuento:" & Descuento End Sub
Observe que cada instrucción If-Then de esta rutina se ejecuta y el valor de Discount puede cambiar a medida que se ejecutan las instrucciones. Sin embargo, la rutina finalmente muestra el valor correcto de Descuento porque las declaraciones Si-Entonces están en orden de valores de Descuento ascendentes.
El siguiente procedimiento realiza las mismas tareas utilizando la sintaxis alternativa ElseIf. En este caso, la rutina finaliza inmediatamente después de ejecutar las declaraciones para una condición verdadera:
Sub ShowDiscount2 () Dim Cantidad tan larga Descuento tenue como doble Cantidad = InputBox ("Ingresar cantidad:") Si Cantidad> 0 y Cantidad <25, entonces Descuento = 0.1 De lo contrario, si la cantidad> = 25 y la cantidad <50, entonces Descuento = 0,15 De lo contrario, si la cantidad> = 50 y la cantidad <75, entonces Descuento = 0,2 De lo contrario, si la cantidad> = 75 entonces Descuento = 0,25 Terminara si MsgBox "Descuento:" & Descuento End Sub
Estas múltiples estructuras If-Then son bastante engorrosas. Es posible que desee utilizar la estructura If-Then solo para decisiones binarias simples.
Aprenda a programar reuniones efectivas en Skype Empresarial desde Outlook o la aplicación de Skype. Siga nuestros sencillos pasos para una mejor colaboración.
Aprende a usar la función de Pegado Especial en Excel 2016 para optimizar la forma en que insertas datos en tus hojas de cálculo. Controla qué información se pega y realiza operaciones matemáticas simples con facilidad.
Descubre las funciones de Excel para convertir entre binario, octal, decimal y hexadecimal con esta tabla informativa y consejos útiles para optimizar tu trabajo.
Completa guía sobre cómo instalar y activar el complemento de Power Query en Excel 2010 y 2013, y su uso en Excel 2016. Aprende a gestionar datos de manera efectiva en Excel.
Aprende a modificar y editar bases de datos en Access 2019, incluyendo cómo nombrar campos, agregar y eliminar campos, y definir tipos de datos. ¡Optimiza tu trabajo con Access!
El comando Ir a en Word 2016 es una herramienta poderosa para navegar rápidamente a una página específica o a elementos dentro del documento. Aprende a optimizar tu flujo de trabajo con este práctico comando.
Aprende cómo resaltar fechas de fin de semana en Excel utilizando formato condicional para mejorar la gestión de tus datos de programación.
Aprenda a insertar un hipervínculo "mailto" en Excel 2010 para crear correos electrónicos de manera simple y eficiente.
Aprenda a utilizar las opciones de pegado y Pegado especial en Word 2007 para manejar eficazmente bloques de texto. Optimizando su formato y presentación.
Descubre cómo modificar un gráfico SmartArt en PowerPoint incluyendo cambios de diseño, estructura y texto. Mejora tus presentaciones con estos consejos SEO.