Cómo utilizar la declaración explícita de opción en VBA

La declaración explícita de opción en VBA es una herramienta fundamental para garantizar la corrección y eficiencia de tus programas. Si eres nuevo en la programación o simplemente deseas mejorar tus habilidades en VBA, este artículo te mostrará paso a paso cómo utilizar esta declaración para maximizar el rendimiento de tus macros. Así que ¡prepárate para aprender y llevar tus conocimientos de VBA al siguiente nivel!

Puntos clave

  • Option Explicit te obliga a declarar todas las variables.
  • Es una declaración que puede usar al comienzo de un módulo.
  • Puedes ingresarlo manualmente o activarlo desde las opciones.
  • Debe utilizar la opción explícita solo una vez.
  • También le ayuda a identificar errores tipográficos al utilizar variables.

¿Qué es la opción VBA explícita?

Option Explicit es una declaración que puede usar al comienzo de un módulo para obligarse a declarar todas las variables. Cuando agrega esta declaración, VBA le muestra un error de compilación cuando ejecuta el código y también resalta la variable en el código que necesita declarar.

Cómo utilizar la declaración explícita de opción en VBA

Cuando agrega una opción explícita al comienzo de un módulo, VBA agrega una línea separadora debajo y luego puede comenzar a escribir un procedimiento. Y cuando tienes la opción de declaración explícita y ejecutas un procedimiento, VBA verifica si hay una variable que no está declarada y te muestra un mensaje de error.

Option Explicit
Sub myMacro()
a = 50
MsgBox a
End Sub   
Cómo utilizar la declaración explícita de opción en VBA

Arriba está el mensaje que recibe cuando una variable no está declarada.

Activar la opción explícita en VBA

Para activar la opción de declaración explícita en un módulo, siga los siguientes pasos.

  1. Primero, abre el Editor de Visual Basic y en el menú de herramientas haz clic en las opciones.
    Cómo utilizar la declaración explícita de opción en VBA
  2. Después de eso, en las opciones, vaya a la pestaña del editor y marque “Requerir declaración de variable”.
    Cómo utilizar la declaración explícita de opción en VBA
  3. Al final, haga clic en Aceptar.
  4. Una vez que haga eso, VBA agregará una opción explícita cada vez que agregue un nuevo módulo.

Pero no agrega esta declaración a su módulo existente, por lo que debe agregarlas manualmente a cada uno de los módulos existentes, uno por uno.

¿Cómo agregarlo manualmente?

Como mencioné, la declaración Option Explicit debe ir antes del primer procedimiento en el módulo (Sub o Función). Por lo tanto, debe agregar esta declaración encima del primer procedimiento (área de Declaraciones generales) y asegurarse de agregarla solo una vez.

Cómo utilizar la declaración explícita de opción en VBA

Si lo agrega dentro de un procedimiento, o entre dos procedimientos, VBA le mostrará un error cuando intente ejecutar cualquiera de los códigos del módulo.

Cómo utilizar la declaración explícita de opción en VBA

Ejemplos (Por qué usar la declaración explícita de opciones es un buen hábito)

Permítame mostrarle un ejemplo para que comprenda por qué se recomienda encarecidamente utilizar la declaración Option Explicit. Mire el siguiente código.

Sub myMacro()
  Dim myText As String    
  myText = "Puneet"    
  MsgBox   MyTxt    
End Sub

En este código, declaré una variable “myText” como una cadena y luego definí el valor de esta variable. Y al final, utilicé un cuadro de mensaje que muestra el valor de la variable, pero si miras con atención, escribí mal esa variable como “MyTxt” en lugar de “myText”.

Cómo utilizar la declaración explícita de opción en VBA

Ahora, cuando ejecuto este código, me muestra un cuadro de mensaje en blanco.

Cómo utilizar la declaración explícita de opción en VBA

Necesito tus 2 minutos para ayudarte a comprender el verdadero problema aquí. Cuando escribí mal el nombre de la variable, VBA lo toma como una variable separada y, como no estoy usando la opción de declaración explícita, no me muestra un error.

Cómo utilizar la declaración explícita de opción en VBA

Es por eso que el cuadro de mensaje usa la segunda variable (mal escrita) que no tiene ningún valor asignado. Ahora piensa por un segundo; Si está escribiendo un código extenso y no utiliza declaraciones explícitas de opciones, le resultará difícil rastrear este error hasta que vuelva a leer el código completo.

Pero con la opción declaración explícita activada, cuando ejecuto este código, muestra un error.

Cómo utilizar la declaración explícita de opción en VBA
Option Explicit
Sub myMacro()
Dim myText As String 
myText = "Puneet" 
MsgBox MyTxt 
End Sub

Error 403 The request cannot be completed because you have exceeded your quota. : quotaExceeded




Cómo utilizar la declaración explícita de opción en VBA

Cómo utilizar la declaración explícita de opción en VBA

La mayoría de los programadores de VBA están familiarizados con la declaración Option Explicit. Esta declaración es esencial en la programación en VBA, ya que obliga al programador a declarar explícitamente todas las variables antes de utilizarlas. Esto ayuda a detectar errores tipográficos o de sintaxis en el código, lo que a su vez mejora la calidad y confiabilidad del programa.

¿Qué es la declaración explícita de opción?

La declaración Option Explicit es una instrucción clave en VBA que se coloca al principio del módulo o antes de cualquier procedimiento. Su función principal es requerir la declaración explícita de todas las variables antes de utilizarlas.

Beneficios de utilizar la declaración explícita de opción

Al utilizar la declaración Option Explicit en VBA, se obtienen los siguientes beneficios:

  1. Detección de errores temprana: Al requerir la declaración explícita de variables, se evitan errores de sintaxis y tipográficos antes de la ejecución del programa.
  2. Mayor claridad: Al declarar todas las variables explícitamente, se mejora la legibilidad del código y facilita su comprensión para otros programadores.
  3. Evita variables no declaradas: La declaración Option Explicit evita el uso de variables no declaradas, lo que puede conducir a resultados inesperados o errores lógicos en el programa.

Ejemplo de uso de la declaración explícita de opción

A continuación se muestra un ejemplo de cómo utilizar la declaración Option Explicit en VBA:

Option Explicit

Sub CalcularSuma()
    Dim num1 As Integer
    Dim num2 As Integer
    Dim resultado As Integer
    
    num1 = 5
    num2 = 10
    resultado = num1 + num2
    
    MsgBox "La suma es: " & resultado
End Sub

En el ejemplo anterior, se declaran explícitamente las variables num1, num2 y resultado antes de utilizarlas en el código. Esto garantiza que no haya errores o variables no declaradas en el programa.

Conclusión

La declaración Option Explicit es una buena práctica en la programación en VBA. Al requerir la declaración explícita de variables, se mejora la calidad del código, se evitan errores y se facilita la colaboración entre programadores.

Para obtener más información sobre la declaración explícita de opción en VBA, puedes consultar la documentación oficial de Microsoft: https://docs.microsoft.com/es-es/office/vba/language/reference/user-interface-help/option-explicit-statement


Deja un comentario