Visual Basic requiere la declaración explícita de variables y permite reservar espacio de memoria para ellas usando la instrucción DIM. Los tipos de datos incluyen variant, numéricos como enteros y cadenas (tipo String), las cuales se pueden concatenar usando el operador &. Es importante evitar el uso de tipo variant sin especificar el tipo para prevenir errores.
2. Variables con declaración obligatoria
Visual Basic nos permite controlar un poco
mejor el tema de las variables que queremos
usar.
Ese control lo da la instrucción: Option
Explicit.
Si ponemos esto en la parte destinada a las
declaraciones de cualquier módulo, nos
obligará a declarar las variables que vamos a
usar en dicho módulo
Mtl Lourdes Cahuich 2
3. Reservar espacio para variables
En el último ejemplo de la entrega anterior,
teníamos una variable llamada Nombre, en la
cual almacenamos un nombre, por tanto
podríamos haberle avisado a Visual Basic
que reservara espacio para una variable, y
para hacerlo usamos la instrucción DIM,
con ésta le indicamos que nos guarde un
quot;cachilloquot; de la memoria para nuestro uso:
Dim Nombre
Mtl Lourdes Cahuich 3
4. Tipos variant
Tipo de datos variant. Con este tipo
podemos asignar a una variable cualquier
tipo de dato.
Desde un número hasta una cadena de
caracteres, pasando por cualquier tipo de
objeto que Visual Basic pueda manejar (más
o menos).
Mtl Lourdes Cahuich 4
5. Tipos de datos generales
Los que hayan tenido experiencias
anteriores, con Basic u otro lenguaje, sabrán
que cada variable debe ser del tipo de datos
que queramos asignarle.
En VB por supuesto esto también es posible
y recomendable.
Mtl Lourdes Cahuich 5
7. Cadenas
En el caso de las variables que van a
guardar nombres (cadenas de caracteres),
se deben declarar como String y el espacio
que ocupa será 4 bytes más un byte por
cada caracter que tenga, en el caso de VB
de 32 bits realmente ocupará 2 bytes por
cada caracter que tenga.
Mtl Lourdes Cahuich 7
8. Tipo de dato String
La longitud máxima de una variable del
tipo String será de aproximadamente
32.000 caracteres y la forma de
declararla será:
Dim Cadena As String
Mtl Lourdes Cahuich 8
9. Tipo de dato String
Una vez declarada podemos asignarle la
cantidad de caracteres que queramos (sin
pasarnos) y cuantas veces queramos.
Hay que tener en cuenta que en cualquier
variable sólo se queda el último valor
asignado.
Ya lo vimos en la entrega anterior, pero
vamos a refrescarlo un poco:
Mtl Lourdes Cahuich 9
10. Ejemplo de resumen
Dim Número As Integer
Número = 5
Print NúmeroNúmero = 12
Print Número
En este ejemplo, el último valor almacenado
en Número es el 12. El 5 que tenía en un
principio se perdió.
Mtl Lourdes Cahuich 10
11. Incrementos en variables
Pero, ¿que tengo que hacer para sumarle
una cantidad al valor almacenado en una
variable?
Es decir, ¿cómo incrementar el valor de una
variable numérica?
Mtl Lourdes Cahuich 11
12. Incrementos en variables
Dim N As Integer
Dim M As Integer
N = 10
M=N*3
Print M
El resultado de este programa sería 30, que
es lo que resulta de multiplicar 10 por 3.
Cuando se asigna a la variable M el valor de
N (que es 10) multiplicado por 3, el VB toma
el contenido de N y lo multiplica por 3.
Mtl Lourdes Cahuich 12
13. Incrementos en variables
Una vez que sabe la solución, asigna
ese valor, en este caso 30) a la variable
que hay a la izquierda del signo igual.
Sabiendo esto, podríamos simplificar la
cosa y hacer los siguiente:
N=N*3
Print N
Mtl Lourdes Cahuich 13
14. Incrementos en variables
También obtendríamos 30.
Ya que cuando el Basic calcula la expresión
de la derecha del signo igual, N vale 10, una
vez obtenido el resultado del cálculo lo
asigna a la variable de la izquierda del signo
de asignación, sin importarle lo más mínimo
de que variables es
Mtl Lourdes Cahuich 14
15. Incrementos en variables – manejo
cadenas
Esto es útil cuando necesitamos quot;contarquot; de
forma secuencial, para así incrementar el
valor de una variable.
Ahora vamos a ver cómo podemos manejar
las cadenas de caracteres, es decir las
variables de tipo String
Mtl Lourdes Cahuich 15
16. Manejo de cadenas
Con estas variables ocurre lo mismo que con
las numéricas, pero la única operación que
podemos realizar es la suma.
Por ejemplo si hacemos esto: N = 3 + 2. El
valor obtenido es 5 y eso es lo que se guarda
en N.
Mtl Lourdes Cahuich 16
17. Manejo de cadenas
Sin embargo con los strings hacer esto:
Cadena = quot;Aquot; + quot;Bquot;, se guardará quot;ABquot;, es
decir se unirán las dos cadenas en una sola.
Para este tipo de operación se recomienda
usar mejor el signo &.
Que entre otras cosas le indica al Visual
Basic que lo que pretendemos hacer es unir
dos cadenas, no sumarlas.
Mtl Lourdes Cahuich 17
18. Cuidado al usar tipos de datos Variant
El tipo de datos Variant acepta de todo,
números, nombres, etc.
Si no le indicamos de forma correcta al VB
cual es nuestra intención, podemos
confundirle y hacer que el resultado de algo
que nosotros dábamos quot;por hechoquot;, al final
se convierte en un pequeño caos
Mtl Lourdes Cahuich 18
19. Cuidado al usar tipos de datos Variant
Vamos a verlo con un par de ejemplos,
en estos casos: (al no indicarle de que
tipo son las variables, el Basic entiende
que nuestra intención es usar el tipo
Variant)
Mtl Lourdes Cahuich 19
20. Cuidado al usar tipos de datos Variant
Dim Num1
Dim Num2
Num1 = 5
Num2 = 3
Num1 = Num1 + Num2
Print Num1
Mtl Lourdes Cahuich 20
21. Cuidado al usar tipos de datos Variant
¿Que imprimirá? Pruébalo y saldrás de
duda. Bueno, imprimirá un 8.
Ahora veamos este otro ejemplo:
Dim Num1
Dim Num2
Num1 = quot;5“
Num2 = quot;3“
Num1 = Num1 + Num2
Print Num1
Mtl Lourdes Cahuich 21
22. Cuidado al usar tipos de datos Variant
Fíjate que lo que varía es sólo las comillas.
El resultado en este caso es 53, es decir ha
unido las dos cadenas.
Mtl Lourdes Cahuich 22
23. Cuidado al usar tipos de datos Variant
Ahora quita las comillas del 5, para
dejarlo así:
Dim Num1
Dim Num2
Num1 = 5
Num2 = quot;3“
Num1 = Num1 + Num2
Print Num1
Mtl Lourdes Cahuich 23
24. Cuidado al usar tipos de datos Variant
¿Que ha pasado? Pues que ha impreso un 8,
es decir ha quot;pasadoquot; de que el tres sea una
cadena de caracteres y lo ha tomado por un
número...
En esta ocasión, sólo vamos a cambiar la
línea de la asignación para dejarla de esta
forma:
Num1 = Num1 & Num2
Mtl Lourdes Cahuich 24
25. Cuidado al usar tipos de datos Variant
El resultado será 53.
Porque le hemos indicado que una las dos
cadenas, por tanto al encontrase con esta
quot;operaciónquot; ha considerado al número 5
como una cadena, en lugar de un número.
Mtl Lourdes Cahuich 25