vba data types numeric
Este tutorial explica varios tipos de datos numéricos y no numéricos disponibles en VBA. También aprenderemos sobre las conversiones de tipos de datos :
Todos los días nos encontramos con muchos tipos de datos como nombre, fecha, facturas, precio de un producto, etc. Todos estos datos pertenecen a un cierto tipo y sus valores no pueden diferir del tipo adjunto. De manera similar, VBA tiene muchos tipos de datos que se utilizan para realizar la acción requerida.
En este tutorial, aprenderemos los diferentes tipos de datos utilizados en VBA y veremos cómo ayudarán a organizar nuestro programa. También veremos cómo convertir un tipo de datos en otro tipo de datos.
=> Consulte TODOS los tutoriales de VBA aquí
Lo que vas a aprender:
- Categorías de tipos de datos
- Conclusión
Categorías de tipos de datos
El tipo de datos le dice a la computadora el tipo de datos que deben almacenarse mediante una variable. Los tipos de datos se dividen en 2 categorías, es decir, tipos de datos numéricos y no numéricos
¿Dónde puedo encontrar la clave de seguridad de la red?
Tipos de datos numéricos
Estos tipos se utilizan para realizar operaciones matemáticas como suma, resta, etc. Ejemplo, cálculo de porcentaje, precio de la acción, comisiones, facturas, antigüedad, etc.
En VBA hay 7 tipos de tipos de datos numéricos como se menciona a continuación.
Tipo de datos numéricos | |
---|---|
7 | Decimal |
1 | Byte |
2 | Entero |
3 | Largo |
4 | Único |
5 | Doble |
6 | Divisa |
Echemos un vistazo breve a todos los tipos de datos numéricos.
# 1) Tipo de datos de byte
Este tipo de datos requiere solo un byte de memoria. Las variables con el tipo de datos Byte pueden almacenar valores de 0 a 255. El valor de byte predeterminado es 0. No se permiten valores negativos ni valores superiores a 255. En caso de que intente asignar valores no válidos, se devolverá un error de desbordamiento.
Sintaxis: Dim Vname As Byte
Aquí Vname es un nombre de variable y Byte es el tipo de datos de la variable.
Ejemplo:
|_+_|La salida se da a continuación
# 2) Tipo de datos entero
Estos tipos de datos se utilizan para almacenar el valor entero completo. Esto ocupa 2 bytes de memoria. Un número entero es uno de los tipos de datos más utilizados. Aceptan valores positivos, valores negativos y también cero. Tienen un rango entre -32.768 y 32.767.
Sintaxis: Dim ignites As Integer
Ejemplo:
|_+_|La salida se da a continuación
# 3) Tipo de datos largo
Esta es una alternativa a un tipo de datos entero que también almacena un valor entero completo. Sin embargo, ocupa más memoria que una variable entera que es de 4 bytes. Tiene un rango de valores de -2,147,483,648 a 2,147,483,648
Sintaxis: Dim vname As Long
|_+_|Si ejecuta el código anterior con una variable entera, obtendrá un error de desbordamiento porque hay 1048576 filas en Excel y el tipo de datos Integer solo admite hasta 32,767. Como se muestra a continuación, cuando el tipo de datos es largo, se muestra un resultado apropiado.
Pero cuando el tipo de datos es un número entero, se produce un error de desbordamiento.
# 4) Tipo de datos decimal
Este es un tipo de datos numérico exacto que se utiliza por su precisión. Ese es el número total de dígitos y el número de dígitos a la derecha del punto decimal llamado factor de escala.
En VBA, los números se escalan en una potencia de 10. Es apropiado usar estos tipos mientras se manipulan números grandes que necesitan un valor preciso. Esto ocupa 14 bytes en memoria.
Pero las variables no se pueden declarar directamente como un tipo de datos decimal. Para utilizar Decimal, debe utilizar la función de conversión CDec. Necesita usar un tipo de datos Variant.
Este tipo de datos contiene el siguiente rango de valores.
+/- 79,228,162,514,264,337,593,543,950,335 sin punto decimal
+/- 7,9228162514264337593543950335 con 28 lugares decimales a la derecha del decimal.
El valor más pequeño distinto de cero aceptado es +/- 0,0000000000000000000000000001.
Sintaxis: Dim ignites As variant
|_+_|Nota: La función TypeName dará el nombre del tipo de datos
Producción:
# 5) Tipo de datos único
Este tipo de datos se utiliza para almacenar números con punto flotante de precisión simple. Ocupa 4 bytes de memoria. El valor predeterminado es 0 y almacena valores decimales. Puede utilizar el signo de exclamación (!) Al declarar una variable como se muestra en la sintaxis siguiente.
El rango de valores aceptado son:
3.402823E38 a -1.401298E-45 para valores negativos
1.401298E-45 a 3.402823E38 para valores positivos.
Sintaxis
Dim VariableName como único
o
Dim VariableName!
# 6) Tipo de datos doble
Los datos de Double VBA se pueden usar para contener tanto números enteros como fracciones. Double se utiliza para almacenar números con coma flotante de precisión doble. Ocupa 8 bytes de memoria y tiene un rango de valores.
-1,79769313486231E308 a -4,94065645841247E-324 para valores negativos
4.94065645841247E-324 a 1.79769313486232E308 para valores positivos
Al igual que el tipo de datos Single, double también se puede declarar usando un símbolo que es Hash (#) como se muestra a continuación.
Sintaxis
Dim VariableName como doble
o
Dim VariableName #
# 7) Tipo de datos de moneda
Este tipo de datos puede ocupar hasta 8 bytes de tamaño de almacenamiento. Este tipo de datos da un valor exacto, a diferencia de los tipos de datos simples y dobles que ya discutimos son redondeados. Son útiles para cálculos monetarios.
El tipo de datos de moneda puede almacenar valores tanto positivos como negativos. Estos pueden almacenar 15 dígitos a la izquierda del decimal y 4 dígitos a la derecha.
El rango permitido es de -922,337,203,685,477.5808 a 922,337,203,685,477.5807. Puede utilizar @ para declarar tipos de datos de moneda.
Sintaxis
Dim VariableName como moneda
o
Dim VariableName @
Producción:
Nota :Si el valor de la variable excede el rango proporcionado para un tipo de datos en particular, se producirá un error de desbordamiento.
Considere el ejemplo simple del tipo de datos de bytes que excede su rango. Se mostrará el mismo error si ingresa valores negativos para el tipo de datos del byte.
Tipos de datos no numéricos
Estos son datos que no pueden ser manipulados por operadores aritméticos. Se componen de texto, cadena, fecha, etc. A continuación se muestran los tipos de datos no numéricos admitidos en VBA.
Tipo de datos no numéricos | |
---|---|
7 | Variante (personajes) |
1 | Cadena (longitud fija) |
2 | Cadena (longitud variable) |
3 | Fecha |
4 | Booleano |
5 | Objeto |
6 | Variante (números) |
# 1) Tipo de datos booleano
Este tipo de datos requiere 2 bytes de memoria y solo puede almacenar 2 valores, es decir, VERDADERO o FALSO. En otras palabras, la variable booleana solo puede obtener el valor VERDADERO o FALSO, alternativamente 1 o 0 respectivamente. El valor predeterminado de una variable booleana es Falso.
Sintaxis: Dim Vname como booleano
Ejemplo:
|_+_|
# 2) Tipo de datos de fecha
Este tipo de datos se utiliza para representar la fecha y la hora. Tiene valores de rango de fechas desde el 1 de enero de 0100 hasta el 31 de diciembre de 9999 y valores de hora desde 0:00:00 hasta 23:59:59 y ocupa 8 bytes de tamaño de almacenamiento.
Sintaxis: Dim se enciende como fecha
|_+_|Nota: Ahora la función da la fecha y hora actual
# 3) Tipo de datos de cadena
Este tipo de datos se utiliza para almacenar el valor de la cadena. La cadena se define como una secuencia de caracteres. Por lo tanto, puede usar el tipo de datos String para almacenar texto y puede usarse para almacenar números, caracteres especiales, s y espacios de eventos. Un valor de cadena debe incluirse entre comillas dobles “”.
cómo abrir un archivo torrent en Windows
Hay 2 tipos de datos de cadena.
# 1) Cadena de longitud variable: Este tipo ocupa 10 bytes de tamaño de almacenamiento más la memoria requerida para la cadena que es la longitud de la cadena. Tienen un valor de rango de 0 a aproximadamente 2 mil millones.
# 2) Cadena de longitud fija: Ocupa la memoria igual a la longitud de la propia cadena. Puede variar de 1 a aproximadamente 65,400 caracteres
Sintaxis: Dim Vname como cadena
Ejemplo:
|_+_|# 4) Tipo de datos de objeto
El objeto tendrá una referencia a un objeto de cualquier tipo, es decir, el tipo de datos del objeto puede apuntar a cualquier tipo de datos como cadena, doble, entero, etc. La variable del objeto no contendrá el valor, solo apunta a la dirección en la que se encuentran los datos almacenado. Ocupa 4 bytes de memoria de computadora. El valor predeterminado de un objeto es una referencia nula.
Sintaxis: Dim VName como objeto
Ejemplo:
|_+_|Esto borrará todas las celdas utilizadas en la hoja actual.
# 5) Tipo de datos de variante
Este es el tipo de datos universal de VBA, puede aceptar cualquier tipo de datos numéricos y no numéricos. El tipo de datos variante ofrece más flexibilidad al trabajar con datos. El tipo de datos de variante usa más tamaño de almacenamiento que cualquier otro tipo de datos. Si no menciona un tipo de datos, VBA lo tratará como una variable Variant.
Hay 2 tipos de tipos de datos Variant
# 1) Variante (números): Puede contener cualquier valor numérico hasta el rango de Double. Los números de variante ocupan 16 bytes de tamaño de almacenamiento.
# 2) Variante (caracteres): Puede contener el mismo rango que para String de longitud variable. Los caracteres Variant ocupan 22 bytes + longitud de cadena (24 bytes en sistemas de 64 bits)
Sintaxis
Dim VName como variante
o
Dim VName
Ejemplo:
|_+_|Conversión de tipo de datos
A veces se hace necesario convertir el tipo de datos de una variable a algo específico en nuestro caso de uso.
Ejemplo: Recupera un valor de una celda, que suele ser una cadena y, por lo tanto, debe convertirlo en un tipo de datos numérico antes de realizar cualquier operación aritmética. Para lograr esto, VBA tiene funciones de conversión de tipos para todos los tipos de datos admitidos.
# 1) CBool
Esta función se utiliza para convertir una expresión en un tipo de datos booleano. Si la expresión devuelve cero, CBool devolverá False, cualquier valor distinto de cero, CBool devuelve True.
|_+_|El código anterior devolverá resultados como Falso, Verdadero, Falso, Verdadero.
Puede intentarlo usted mismo, dibujar un botón de comando de control ActiveX, hacer clic con el botón derecho -> Ver código e insertar el código anterior. Haga clic en el botón Comando y se mostrará el resultado. (Desactivar el modo de diseño)
Producción
# 2) CByte
Esta función se utiliza para convertir una expresión en un tipo de datos Byte. Recuerde que después de la conversión, si el rango excede el rango permitido para Byte, se generará un error de desbordamiento.
|_+_|Nota: Si da el valor como 255,56. El cumplidor devolverá un error de desbordamiento
# 3) CCur
Esta función convertirá una expresión en un tipo de datos Moneda.
|_+_|
# 4) CDate
Esta función convertirá una cadena en una fecha. Suponga que recupera el valor de Fecha como una Cadena de una celda de Excel, luego necesita convertirlo antes de realizar cualquier otra acción. Puede utilizar CDate.
|_+_|# 5) CDbl
La función CDbl se utiliza para convertir una expresión en un tipo de datos Double.
|_+_|# 6) CDec
Esta función convertirá un valor numérico a decimal.
|_+_|# 7) CInt
La función CInt convertirá un valor en un tipo de datos entero.
|_+_|# 8) CLng
Esta función se utiliza para convertir un valor en un tipo de datos largo
|_+_|# 9) CSng
Esta función convertirá un valor en un tipo de datos único
|_+_|# 10) CStr
Esta función se utiliza para convertir un valor numérico en un tipo de datos de cadena.
|_+_|# 11) CVar
Esta función convertirá una expresión en un tipo de datos Variant.
|_+_|Preguntas frecuentes
P # 1) ¿Cuál es el tipo de datos predeterminado en VBA?
Responder: La variante es la predeterminada. Si no define un tipo de datos de una variable, VBA lo trata como una variable / objeto variante.
P # 2) ¿Qué es un error de no coincidencia de tipo?
Responder: Este error se activará cuando declare una variable como un tipo de datos y asigne un valor inapropiado.
Ejemplo: Declare una variable como Entero e ingrese un valor de texto.
P # 3) ¿Cómo soluciono un error de desbordamiento?
lista enlazada circular en c ++
Responder: Debe consultar el rango permitido para ese tipo de datos en particular y asegurarse de ingresar un valor dentro del rango permitido.
Ejemplo: Byte permite solo de 0 a 255, si ingresa un valor negativo o un valor de v superior a 255, se produce un error de desbordamiento.
Conclusión
En este tutorial, hemos aprendido sobre los tipos de datos de VBA, es decir, 7 tipos de datos numéricos y 7 no numéricos. También discutimos cómo convertir un tipo de datos de un tipo a otro con ejemplos.
=> Consulte aquí para ver los tutoriales de capacitación de VBA de la A a la Z
Lectura recomendada
- Tutorial de Excel VBA - Introducción a VBA en Excel
- Tipos de datos C ++
- Tipos de datos de Python
- Tipos de datos y variables de C # con ejemplos
- Conversión de tipo C #: conversión de datos explícita e implícita con ejemplo
- Tipos de datos de matriz: matriz int, matriz doble, matriz de cadenas, etc.
- Tipos de datos MySQL | ¿Cuáles son los diferentes tipos de datos en MySQL?