Está en la página 1de 22

Carrera: Ingeniería Industrial

Curso: Algoritmos

Unidad 1
- Introducción al VBA -

Prof. Carlos Rojas Ramos


Visual Basic for Applications (VBA)
• Es un lenguaje derivado del Visual Basic (VB),
lenguaje de programación orientado a objetos y
manejado por eventos.

• El VBA permite ampliar la funcionalidad de las


aplicaciones Office (Excel, PowerPoint, Access,
etc.).

• Los proyectos de VBA se deben guardan como


“Libro de Excel habilitado para macros”.
MACROS
Excel posee una amplia librería de funciones
predefinidas, pero de ser necesario, el usuario
puede incorporar nuevos subprogramas (funciones
o procedimientos) denominados MACROS, de una
de las siguientes formas:

• Creando una aplicación usando el VBA.

• Automatizando un grupo de tareas empleando el


Grabador de Macros.
Estructura general de un programa en VBA

1. Declaración de constantes y variables.


2. Iniciación de valores.
3. Ingreso de datos.
4. Bloque(s) de instrucciones.
5. Mostrar resultados.
Conceptos Básicos de Programación
 1. Constantes, Variables y Tipos de Datos.
• 1.1 Constantes.
• 1.2 Variables.
• 1.3 Principales tipos de datos.
 2. Instrucción de asignación de datos a las
variables.
 3. Principales operadores y su prioridad.
 4. Algunas Funciones Matemáticas disponibles
en VB.
1.1 Constantes
 Una Constante es aquella cuyo valor no
cambia durante la ejecución de un programa.
Ejm: El IGV, el ISC, el nombre de un
programa, etc.
 En VB se declaran mediante la Sentencia
CONST. Ejm:
CONST IGV = 0.19
CONST NOMBRE = “Carlos”
1.2 Variables

 Una variable es aquella cuyo valor cambia


durante la ejecución de un programa.
 En VB, se declaran mediante la Sentencia
DIM
 La sintaxis es: DIM Variable AS Tipo

• Tipo representa el tipo de datos que


puede manejar la variable; así tenemos:
1.3 Principales tipos de datos

Clasificación Tipo Rango Permitido

Byte [0 ; 255]
Numéricos Enteros Integer [-32,768; 32,767]
Long [- 2147’483,648; 2147’483,647]
Single [- 3.40 x 1038 ; 3.40 x 1038 ]
Numéricos Reales
Double [- 1.80 x 10308 ; 1.80 x 10308 ]

Cadena de
String 0 a 2.000 millones (variable)
Caracteres

Lógicos Boolean True , False


Nombres de Constantes y Variables
 Los nombres de las constantes y de las variables siempre
comienzan con una letra. No llevan espacios en blanco.
 No pueden contener un carácter de declaración de tipo:
%, &, !, #, @ ó $
 Debe ser único dentro de su propio ámbito.

 Ejemplos:
• Correcto: CONST X1 = 100
• Incorrecto: CONST 1X = 100
• Correcto: DIM Nota_Promedio As Single
• Incorrecto: DIM Nota Promedio As Single
1. Instrucción de asignación de datos a las variables

 Se realiza mediante el signo =


 Si va a ingresar datos en variables numéricas, anteponer la función
VAL a la caja de texto. Ejemplos:

Instrucción Significado

Asignar a la variable Radio el valor que


Radio = Val (InputBox (“Ingrese radio”)) el usuario ingrese por teclado

Asignar a la variable Area el producto


de 3.14 por el cuadrado de la variable
Area = 3.14 * Radio ^ 2 Radio.
Si Radio no tiene valor asignado, VB lo
reconocerá como cero.
2. Algunas Funciones Matemáticas disponibles en VB

Función Calcula el (la)…


Seno, coseno y tangente del ángulo “X”
SIN(X), COS(X), TAN(X)
(“X” en radianes)
Arco Tangente de “X” (la respuesta es en
ATN(X)
radianes)
EXP(X) Valor de ex

LOG(X) Logaritmo Neperiano de “X” (X > 0)

SQR(X) Raíz cuadrada de “X”

ABS(X) Valor absoluto de “X”


5. Visualización de resultados
 Se utiliza la sentencia MsgBox
 Ejemplo: Si la variable dato1 tiene el valor de 5, entonces:
• MsgBox dato1
Muestra el valor que tiene en memoria la variable dato1, es
decir: 5
• MsgBox “El resultado es ” & dato1
Muestra un mensaje seguido del valor en memoria de la variable
dato1, es decir: El resultado es 5
Verificando lo aprendido
 Qué se mostraría en pantalla si se ejecutara el siguiente
código:
Sub Ejemplo1( )
Dim dato1 As String
Dim dato2 As Integer
dato1 = "Herramientas"
dato2 = Herramientas
MsgBox "el valor de " & dato1 & " es " & dato2
End Sub
Verificando lo aprendido
 Qué se mostraría en pantalla si se ejecutara el siguiente
código:
Sub Ejemplo2( )
Dim compras As Single
Dim total As Integer
compras = 200
total = compras + 100
compras = total
MsgBox compras
End Sub
Verificando lo aprendido
 Qué se mostraría en pantalla si se ejecutara el siguiente
código:
Sub Ejemplo3( )
Dim compras As Single
Dim total As Integer
compras = 200
compras = total
total = compras + 100
MsgBox compras
End Sub
Verificando lo aprendido
 Qué se mostraría en pantalla si se ejecutara el siguiente
código:
Sub Ejemplo4( )
Dim compras As Single
Dim total As Integer
compras = 8 + 4 ^ 2
compras = total
MsgBox compras
End Sub
Verificando lo aprendido
 Qué se mostraría en pantalla si se ejecutara el siguiente
código:
Sub Ejemplo5( )
Dim compras As Single
Dim total As Integer
compras = 8 + 4 ^ 2
MsgBox compras
compras = total
End Sub
Referencia a una celda Excel en VBA
 Cells(1,1) = “Hola” Permite mostrar el mensaje en dicha
celda.
 [A1] = “” o [A1]=Empty Limpia la celda

 Hoja3.[A1] = “Hola” Muestra el mensaje en la celdaA1


de la Hoja3
 [A1:B3] = “Hola“ o

 Range(Cells(1, 1), Cells(3, 2)) = “Hola“ Muestra el


mensaje en el rango de celdas especificado.
Referencia a una celda Excel en VBA
Observe el siguiente ejemplo
Sub Caso1( )
Dim Num1 As Integer
Num1 = Val(InputBox("Escriba un número"))
Worksheets(1).Range("A1").Value = Num1
Worksheets(2).Range("A1").Value = Num1
Worksheets(3).Range("A1").Value = Num1
End Sub
 Cuyo resultado será igual que:
Sub Caso2( )
Dim Num1 As Integer
Num1 = Val(InputBox("Escriba un número"))
Worksheets("Hoja1").Range("A1").Value = Num1
Worksheets("Hoja2").Range("A1").Value = Num1
Worksheets("Hoja3").Range("A1").Value = Num1
End Sub
EJEMPLOS DE VBA
Ejemplo1:

Ingrese dos números y calcule lo siguiente:

• La suma de los números.


• El producto de los números.
EJEMPLOS DE VBA
Ejemplo 2:

Elabore un algoritmo que determine si un número


entero es par o impar.

También podría gustarte