Problemas con las variables en VBA

Definir una variable

1
Dim NombreVariavle As TipoVariable

Con esto queda la variable perfectamente definida, si no se pusiera no ocurriría posiblemente nada, salvo que se utilizaría una mayor cantidad de memoria de la necesaria, al definirse instantáneamente en el momento de utilizarla como de tipo Value.

1
Option Explicit

Con esta aplicación, se avisaría en caso de no tener definida una variable, o en caso de utilizar datos de páginas diferentes a la activa.

En algunos casos nos podemos encontrar que trate la variable como un tipo que no nos interesa (tipo int cuando queremos que sea un tipo string) y de este modo forzamos a que no se produzca este error.

Las funciones de conversión se utilizan para cambiar el tipo de dato, de una expresión a fin de poder operar con ella.

Función Tipo Valor que devuelve la función
CBool Boolean Cualquier cadena o expresión numérica válida
CByte Byte 0 a 255
CCur Currency 922 337 203 685 477,5808 a 922 337 203 685 477,5807
CDate Date Cualquier expresión de fecha válida
CDbl Double -1.79769313486231E308 a -4,94065645841247E-324 para los valores negativos ; 4,94065645841247E-324 a 1,79769313486232E308 para los valores positivos
CDec Decimal +/-79 228 162 514 264 337 593 543 950 335 para los número sin décimales. El rango de numeros  para  28 décimales +/-7,9228162514264337593543950335. El número más pequeño es diferente de cero 0,0000000000000000000000000001
CInt Integer -32 768 a 32 767 , las fracciones se redondean. Las partes decimales se redondean a 0.5 y el número par más cercano
CLng Long 2 147 483 648 a 2 147 483 647 , las fracciones son redondeadas.  Las partes decimales se redondean a 0.5 y el número par más cercano
CSng Single -3,402823E38 a -1,401298E-45 para los valores negativos,  1,401298E-45 à 3,402823E38 para los valores positivos
CStr String Los valores devueltos por la función Cstr de la expresión dependiente
CVar Variant Mismo rango de valores para los números de tipo doble y el tipo de cadenas no númericas.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.