- Hacer clic en A5
- Ingresar 120
- Hacer clic en B5
- Ingresar 5
- Hacer clic en C5
- Ingresar =A5*B5
Esta es una lista o secuencia de acciones a ser ejecutadas en una hoja del Excel, constituye un PROCEDIMIENTO o PROGRAMA, en los predios de los lenguajes de aplicación de computadoras.
Este procedimiento es lo que se conoce como una macro en Excel. Naturalmente habrá procedimientos o programas muy extensos de cientos de miles de líneas. Por ejemplo, en el primer Sistema Operativo que tuvo la main frame (computadora grande) IBM 4300 estuvo programa en Fortran y tenía más de 400 mil líneas.
El procedimiento dado líneas arriba lo entendemos todos nosotros que hablamos o entendemos el Lenguaje Español, pero no lo entiende el Excel ni menos una computadora (celular o main frame).
Para que el Excel ejecute ese procedimiento debemos codificarlo en el lenguaje que el Excel entiende y darlo en un formato y forma como el lo quiere. Ese lenguaje es el Lenguaje de Aplicaciones VBA; usado en todo el Office. Este lenguaje como todos los otros, manejan datos, fórmulas, usan todos los recursos del Office bajo el concepto de Objetos.
Vamos a aprender las mínimas sentencia del lenguaje de forma que podamos modificar algunas de las macros que hemos grabado, así como codificaremos otros. En la modificación de algunas macros, está aquella que nos permite construir una tabla dinámica.
Las sentencias que estudiaremos serán:
InputBox(...) ................................. Que nos permitirá ingresar datos desde el teclado
MsgBox(...) .................................. Que nos permitirá emitir datos o resultados en la pantalla
Sentencia de asignación ................. con la cual los datos serán pasados de una variable a otra
Sentencia For(...) - Next ............... Para realizar repetidas veces un segmento del procedimiento
Sentencia While(...) - WEnd ......... Para repeir un segemento del procedimiento siempre que se cumpla cierta condición
Sentencia Select(...) - EndSelect ... Para ejecutar un segmento del procedimiento selectivamente
Pero antes debemos hablar de VARIABLES y Constantes.
>
La memoria del computador (celular, etc.) es una gigantesca hoja electrónica como el Excel. Tiene celdas como el Excel. Yo digito 120 en A5. Luego A5 contiene al dato 120. Cada celda del Excel tiene un nombre. En una computadora, cada celda de su memoria tiene una identificación en binario, pero nosotros lo manejamos con nombres que querramos a las cuales se les llama variable. Por ejemplo, la variable XTot, A, X121, Saldo_Total, etc.
Las variables, desde el punto de vista de la programación, son objetos, como lo son las hojas, celdas, libros, gráficos, Libros, etc.
Las variables pueden ser numéricas o de texto (cadena de caracteres). Se usan las variables para guardar un dato o resultado. El contenido de una variable puede cambiar según lo querramos. Cuando estas variables no cambian de valor se les conoce como CONSTANTES. Por ejemplo Tasa, Igv, Titulo_Empresa, o el nombre que se nos ocurra pero que en todo el procedimiento se mantendrá coun un único valor.
Puesto que un procedimiento puede ser muy grande y complejo, podemos dividirlo en varios procedimientos. Un procedimiento usará variables y otros usarán otras variables; pero habrá procedimientos que usan variables comunes. Luego un procedimiento puede contener variables propias, cuyo ambito es el mismo procedimiento, llamado variables locales y aquellas que son usadas con su contenido en otros procedimientos, llamados variables públicas.
Ante todo, las variables a ser usadas en un procedimiento, deben ser declaradas; no es imprescindible, pero es bueno (y en muchos casos puede crear problemas) declararlas. Esto se hace con la sentencia DIM.
El nombre de una variable puede estar todo en minúscula, mayúscula, o combinarlas.
Sintaxis:
Dim Var1, Var2, ... As TypoVar
donde TypoVar puede ser: Boolean, Byte, Character, Integer, Double, Date, String, Variant, Hoja1, Sheets, Range, object, entre muchísimas otras que tienen poco uso.
Cuando la variable va a ser numérica entera se puede declarar de tipo Byte o Integer. Si va a tener decimales, de tipo Double.
Si la variable va a contener un solo caracter, debe ser de tipo Character. Si va a contener muchos caracteres (números, texto, etc) su tipo debe ser String. Si su tipo puede cambiar en el procedimiento, de tipo Variant. Si va a ser una hoja, de tipo Sheets; si va a ser un libro, de tipo WorkBook; si va a contener nombre de celdas, de tipo Range; etc.
Ejemplos
Dim M, n, nroDatos as Integer ' Define a las variables M, n, nroDatos a todas ellas como enteras
Dim xTot, sx, sx2, sy, sxy as Dim Xtit, Frase, cad, Msg As String ' Define a XTit, Frase, cad, Msg como variables de tipo cadena de caracteres
Dim Letra, car as Character ' Define a las vaiables Letra, car como una variable de tipo caracter (una sola letra)
Dim Hoja As Sheets ' Define a la variable Hoja como un objeto de tipo hoja de cálculo
Dim as LVentas, LStock, LTrans as WorkBook ' Las variables LVentas, LStock y LTrans, son definidas como objetos de tipo libro de Excel.
etc.
En la siguiente sesión continuaremos con el lenguaje VBA; para ello haga clic aquí