Declaración de variables (Microsoft Excel)
Si alguna vez ha programado macros, probablemente esté familiarizado con cómo define las variables usando la palabra clave Dim. Por ejemplo, puede definir una variable entera con el nombre MyVar de la siguiente manera:
Dim MyVar As Integer
Esto es muy sencillo y funcionará bien en su código. Para guardar algunas líneas en su código, puede tener la tentación de definir múltiples variables por línea:
Dim x, y, z As Integer
En algunas versiones del lenguaje BASIC, esto definirá e inicializará tres variables, cada una como un número entero. En VBA también parece funcionar correctamente y no se genera ningún error. Sin embargo, existe un pequeño problema: sólo la última variable (z) se define realmente como un número entero.
Puedes ver cómo funciona esto usando el siguiente código:
Sub DimTest() Dim x, y, z As Integer Dim sTemp As String sTemp = "x is type " & VarType(x) & vbCrLf sTemp = sTemp & "y is type " & VarType(y) & vbCrLf sTemp = sTemp & "z is type " & VarType(z) MsgBox sTemp End Sub
Cuando ejecuta la macro, el cuadro de mensaje muestra que el tipo de variable para xey es 0, lo que significa que la variable es una variante (el tipo de datos predeterminado para las variables no declaradas). Solo el último cuadro de mensaje (para z)
muestra un tipo de variable de 2, que significa un número entero.
La solución es asegurarse de declarar sus variables una por línea, o usar la sintaxis completa para cada variable, como se muestra a continuación:
Dim x As Integer, y As Integer, z As Integer
_Nota: _
Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.
link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador]
.
ExcelTips es su fuente de formación rentable en Microsoft Excel.
Este consejo (12427) se aplica a Microsoft Excel 2007, 2010, 2013 y 2016.
Puede encontrar una versión de este consejo para la interfaz de menú anterior de Excel aquí: link: / excel-Declarar_Variables [Declarar variables]
.