Guia Basica de Visual Basic PDF
Guia Basica de Visual Basic PDF
Guia Basica de Visual Basic PDF
1. INTRODUCCIN ................................................................................................................................... 3
2. EL ENTORNO DE VISUAL BASIC .................................................................................................... 4
2.1. LA BARRA DE MENS ...................................................................................................................... 5
2.2. LA BARRA DE HERRAMIENTAS ........................................................................................................ 5
2.3. LA CAJA DE HERRAMIENTAS ........................................................................................................... 6
2.4. FORMULARIOS................................................................................................................................. 6
2.5. VENTANA DEL PROYECTO (PROJECT) ............................................................................................ 7
2.6. VENTANA DE PROPIEDADES (PROPERTIES) ................................................................................... 7
3. CONTROLES MS USADOS ............................................................................................................. 8
3.1. BOTN DE COMANDO (COMMANBUTTON) ..................................................................................... 8
3.2. ETIQUETA (LABEL).......................................................................................................................... 8
3.3. CAJA DE TEXTO (TEXTBOX) ........................................................................................................... 9
4. ENTRADA Y SALIDA ......................................................................................................................... 11
4.1. LEER DE TECLADO ........................................................................................................................ 11
4.1.1. InputBox (Caja de entrada de datos) ......................................................................... 11
4.2. IMPRIMIR EN PANTALLA................................................................................................................. 11
4.2.1. Caja de texto .................................................................................................................... 11
4.2.2. MsgBox (Caja de mensaje) ........................................................................................... 11
5. PROGRAMACIN EN VISUAL BASIC ........................................................................................... 14
5.1. COMENTARIOS .............................................................................................................................. 14
5.2. VARIABLES .................................................................................................................................... 14
5.2.1. Nombre .............................................................................................................................. 14
5.2.2. Variables y constantes .................................................................................................. 14
5.2.3. Tipos de datos ................................................................................................................. 14
5.3. OPERADORES................................................................................................................................ 15
5.4. ESTRUCTURAS DE CONTROL ........................................................................................................ 16
5.4.1. Estructuras de control secuenciales ......................................................................... 16
5.4.2. Estructuras de control selectivas............................................................................... 18
1 Simple ......................................................................................................................................................18
2 Doble........................................................................................................................................................19
3 Anidada ...................................................................................................................................................21
5.4.3. Estructuras de control repetitivas o iterativas........................................................ 22
1 Para ..........................................................................................................................................................23
2 Mientras...................................................................................................................................................24
6. FUNCIONES Y PROCEDIMIENTOS................................................................................................ 27
7. ARREGLOS.......................................................................................................................................... 32
7.1. VECTORES ..................................................................................................................................... 32
7.2. MATRICES ..................................................................................................................................... 36
EJEMPLO 7.4:.............................................................................................................................................. 36
8. CADENAS DE CARACTERES Y ARCHIVOS................................................................................ 41
8.1. CADENAS ...................................................................................................................................... 41
8.2. ARCHIVOS ..................................................................................................................................... 43
8.2.1. Lectura y escritura de archivos secuenciales......................................................... 43
1 Apertura y cierre ...................................................................................................................................43
2 Lectura.....................................................................................................................................................43
3 Escritura..................................................................................................................................................44
9. CONTROLES SEGUNDA PARTE.................................................................................................... 46
9.1. BOTONES DE OPCIN (OPTION BUTTON)..................................................................................... 46
9.2. BOTONES DE SELECCIN (CHECK BOX) ...................................................................................... 46
9.3. BARRAS DE DESPLAZAMIENTO (SCROLLBAR) ............................................................................ 47
9.4. CAJAS COMBINADAS (COMBOBOX) ............................................................................................. 51
Ing. Hugo Marcelo Muriel Arriaran
9.5. CONTROLES PARA ARCHIVOS ....................................................................................................... 54
9.6. CONTROL TIMER ............................................................................................................................ 56
10. MANEJO DE EVENTOS................................................................................................................ 58
10.1. EVENTOS GENERALES .................................................................................................................. 58
10.1.1. Formularios ...................................................................................................................... 58
10.1.2. Paint ................................................................................................................................... 58
10.1.3. Focus ................................................................................................................................. 61
10.1.4. Keys Events (Evento de las teclas) ............................................................................ 62
10.2. EVENTOS DEL RATN .................................................................................................................... 64
10.2.1. Click y DblClick ............................................................................................................... 64
10.2.2. MouseDown, MouseUp, MouseMove......................................................................... 64
11. CAJAS DE DILOGO.................................................................................................................... 68
11.1. ABRIR/GUARDAR (OPEN/SAVE DIALOG CONTROL).................................................................... 68
11.2. IMPRIMIR (PRINT DIALOG CONTROL) ........................................................................................... 70
12. MENS ............................................................................................................................................. 71
12.1. EDITOR DE MENS (MENU EDITOR) ............................................................................................. 71
12.1.1. Elementos ......................................................................................................................... 71
12.2. PROGRAMAR LOS MENS ............................................................................................................. 72
13. UTILIZACIN DE IMPRESORAS................................................................................................ 75
13.1. PRINTFORM ................................................................................................................................... 75
13.2. PRINTER ........................................................................................................................................ 75
13.3. CAJA DE DILOGO MSGBOX ........................................................................................................ 76
13.4. CAJA DE DILOGO FONT (FONT DIALOG CONTROL) ................................................................... 76
14. BASES DE DATOS ........................................................................................................................ 80
14.1. MYSQL ......................................................................................................................................... 80
15. INTERACCIN CON OTROS SISTEMAS ................................................................................. 83
15.1. TRABAJANDO CON MICROSOFT WORD ........................................................................................ 83
15.1.1. Trabajar con Archivos Word ........................................................................................ 84
15.1.2. Imprimir Archivos Word ................................................................................................ 85
15.1.3. Macros ............................................................................................................................... 88
1 BVA y Macros ........................................................................................................................................88
2 Almacenamiento ...................................................................................................................................88
3 Comenzando con la Macro.................................................................................................................88
4 Creando Macros ....................................................................................................................................88
5 Ejemplos .................................................................................................................................................89
15.1.4. Creacin de documentos inteligentes....................................................................... 90
1 Ejemplos de documentos inteligentes ............................................................................................91
15.2. TRABAJANDO CON MICROSOFT EXCEL ....................................................................................... 92
15.2.1. Macros ............................................................................................................................... 92
15.3. VISUAL BASIC PARA AUTOCAD .................................................................................................. 100
15.3.1. Editor de Visual Basic ................................................................................................. 100
15.3.2. Dibujo de figuras bsicas con VBA ......................................................................... 101
15.3.3. Importar Exportar Datos de entre AUTOCAD Y EXCEL ...................................... 102
2
CAPITULO 1
Introduccin
1. Introduccin
sta es una gua bsica ilustrativa para principiantes en Visual Basic. El objetivo
es introducir de un modo sencillo a utilizar el entorno de programacin y empezar a
crear programas en muy corto tiempo.
La gua trabaja tomando como base la versin 6.0 de Visual Basic, el cual debe
recordar est protegido por leyes internacionales de productos intelectuales. Cualquier
logotipo o marca registrada que se hace mencin en sta gua es propiedad de sus
autores.
Qu es VISUAL BASIC?
CAPITULO 2
El entorno de Visual
Basic
Para poder empezar lo que se tiene que hacer es seleccionar Standar.exe (est
seleccionado por defecto) y hacer clic con el ratn en Abrir. Lo que se hace con ello
es abrir un nuevo proyecto. La figura 2.2 muestra el aspecto que tiene el proyecto.
4
Ing. Hugo Marcelo Muriel Arriaran
hecho de que Visual Basic coloca las opciones ms comunes en esta barra. De
esta barra los botones que ms usaremos son:
- Abrir (carpeta abrindose)
- Guardar (Disco de color marrn)
- Los botones para Iniciar, pausar y detener un programa. Estos tres botones se
ven mejor en la figura 2.6.
-
6
Ing. Hugo Marcelo Muriel Arriaran
Abreviatura
Control
(3 letras)
cmd CommandButton
txt TextBox
frm Form
lbl Label
Tabla 2.1. Abreviaturas para los controles ms comunes
7
Ing. Hugo Marcelo Muriel Arriaran
CAPITULO 3
Controles ms
usados
3. Controles ms usados
Los siguientes controles son los ms tiles y los que ms se utilizarn en el
aprendizaje de Visual Basic.
8
Ing. Hugo Marcelo Muriel Arriaran
La figura 3.2 es un
ejemplo de una
etiqueta, para colocar
este control en un
formulario lea el
apartado 2.3.
Se habr notado que este control no tiene la propiedad Caption Es lgico cierto?
En la figura 3.3 se muestra un ejemplo de una caja de texto colocada en un
formulario, resaltando la caja de texto y sus propiedades descritas.
9
Ing. Hugo Marcelo Muriel Arriaran
En este punto uno se preguntar Y solamente so colocan los controles y sin hacer
nada funcionan?
La respuesta a esta pregunta es que slo se ha diseado la apariencia de los
controles.
Qu falta?
Falta colocarles los algoritmos para
que funcionen.
Dnde se colocan los algoritmos?
En el apartado 2.5 se habla de dos
botones de la ventana de proyecto
que permiten cambiar entre vista
diseo y vista cdigo. Cuando se
selecciona un control o un formulario y
se le da vista cdigo se muestra
donde se tiene que colocar los
algoritmos.
Muy complicado?
Ms fcil an, haciendo doble clic
sobre un formulario o un control se
muestra la vista de cdigo. En esta Figura 3.4. Vista de cdigo para un formulario
vista aparecen dos lneas con color,
entre esas dos lneas se colocan los algoritmos que se deseen.
10
Ing. Hugo Marcelo Muriel Arriaran
CAPITULO 4
Entrada y Salida
4. Entrada y Salida
Este captulo muestra como interactuar con el usuario. Los aspectos ms importantes
sern como leer datos y como imprimir datos por pantalla.
En pseudocodigo se colocaba:
leer a
leer b
En Visual Basic:
a=InputBox(Ingrese a)
b=InputBox(Ingrese b)
En pseudocdigo se colocaba:
imprimir (Estoy aprendiendo Visual Basic)
En Visual Basic:
txtMensaje.Text=Estoy aprendiendo Visual Basic
Recuerde que txtMensaje es el nombre de la caja de texto y se maneja
como una variable ms.
11
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 4.1:
Se pide hacer un programa en Visual Basic que permita leer un nmero desde el
teclado mostrando Ingrese un nmero y lo imprima en pantalla (use una caja de
texto).
Solucin:
Abra un formulario en blanco en Visual Basic, coloque una caja de texto y coloque
Name=txtSalida y text=resultado. El diseo se vera ms o menos como la figura
4.1.
Falta colocar los algoritmos para ello haga
doble clic sobre el formulario y coloque lo
siguiente:
Ejemplo 4.2:
Haga un programa en Visual Basic que lea la edad del usuario, imprima la edad y
muestre el siguiente error: Error: Usted es casi un nio
Solucin:
Coloque una caja de texto en un formulario con su Name=txtEdad y text=Edad.
Doble clic sobre el formulario y coloque lo
siguiente luego ejectelo:
12
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 4.3:
Realice un programa que pida ingresar solamente la hora sin minutos ni segundos,
y que muestre el siguiente error: Error: Fjese su reloj, ya es hora de irse
Solucin:
No necesita colocar nada sobre el formulario, directamente doble clic en l y
coloque lo siguiente:
13
Ing. Hugo Marcelo Muriel Arriaran
CAPITULO 5
Programacin en
Visual Basic
5. Programacin en Visual Basic
Este manual supone ciertos conocimientos bsicos del lector y se irn explicando los
aspectos ms importantes al igual que su uso.
5.1. Comentarios
Qu es un comentario?
Es un texto explicativo que se coloca en Visual Basic despus del smbolo (). En
otras palabras todo lo que va a la derecha de dicho smbolo Visual Basic no lo
toma en cuenta.
En el ejemplo 5.1 se ve claramente el uso de comentarios.
5.2. Variables
Como es conocido una variable no es ms que un nombre que contiene un valor.
Para declarar una variable en Visual Basic se coloca lo siguiente:
Dim <nombre> As <tipo de dato>
5.2.1. Nombre
El nombre que se le de siempre debe comenzar por una letra, sin colocar ni
espacios ni puntos, ni caracteres extraos.
5.2.2. Variables y constantes
Hay dos tipos de variables claramente reconocidas:
- Variables: Son variables cuyo valor puede cambiar durante el programa,
como ser el salario, dimensiones de una figura, otros.
- Constantes: En este caso se les da un valor y no cambia ms durante todo
el programa.
5.2.3. Tipos de datos
Los tipos de datos que se usarn se encuentran en la tabla 5.1.
14
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 5.1:
El siguiente programa en Visual Basic muestra un conjunto de declaraciones de
variables. Para que funcione debe colocar en un formulario un campo de texto que
tenga su Name: txtResultado y text: Salidas. Y colocando en el formulario el
siguiente cdigo:
5.3. Operadores
15
Ing. Hugo Marcelo Muriel Arriaran
En este punto se asumir una convencin que es el uso de un botn salir, en todos
los programas que se hagan siempre tendr que estar presente ste botn. En los
ejemplos que continan se ensear como usar ste botn.
Ejemplo 5.2:
Haga un programa que permita sumar dos nmeros naturales ledos desde el
teclado cuantas veces se desee y que tenga un botn que permita salir.
Solucin:
Usando un nuevo formulario, coloque una caja de texto no muy grande,
coloque el Name:txtSuma y text:Resultado. Tambin coloque un botn y
ponga Name:cmdSalir y Caption:Salir. Agregar otro botn que permitir
realizar la suma, coloque Name:cmdSumar, Caption:Sumar 2 numeros. Este
ltimo botn ser el que permita realizar la suma cuntas veces se quiera, o
sea cada vez que se haga clic en l.
16
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 5.3:
realizar un algoritmo que imprima cuantos Bs son un valor x de dlares
ingresados por el usuario. La tasa de cambio es 8.10 Bs por cada dlar.
Algoritmo Cambio
Var dolares, bolivianos:real
INICIO
imprimir Ingrese los dlares
leer dolares
bolivianos dolares*8.10
imprimir bolivianos
FIN
Pasar la solucin a Visual Basic, coloca la opcin de salir.
17
Ing. Hugo Marcelo Muriel Arriaran
Solucin:
1 Simple
La estructura es:
18
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 5.4:
Imprimir Nmero natural si el nmero ledo es mayor que 0.
Solucin:
2 Doble
La estructura es:
Ejemplo 5.5:
Pedir la nota de un estudiante y mostrar aprobado o reprobado,
segn la nota sea mayor o igual a 51 que es de aprobacin.
19
Ing. Hugo Marcelo Muriel Arriaran
Algoritmo Nota
Var nota:entero
INICIO
leer nota
si (nota >= 51) entonces
imprimir aprobado
sino
imprimir reprobado
fin_si
FIN
Ejemplo 5.6:
Realizar lo mismo que en el ejemplo 5.5 slo que sta vez se debe verificar
que la nota este entre 0 y 100, en caso de no ser as sacar un mensaje de
error usando MsgBox.
Solucin:
20
Ing. Hugo Marcelo Muriel Arriaran
3 Anidada
La estructura es:
Ejemplo 5.7:
Escribir un programa que pida la nota de un examen (un n real entre 0
y 10) e imprima por pantalla la calificacin en formato Reprueba, si la
nota es menor que 5, Aprobado si est entre 5 y 7 sin incluirlo,
Notable si est entre 7 y 9 sin incluirlo, Sobresaliente si est entre 9
y 10 sin incluirlo y Excelente si la nota es igual a 10.
Solucin:
21
Ing. Hugo Marcelo Muriel Arriaran
22
Ing. Hugo Marcelo Muriel Arriaran
1 Para
Permite ejecutar un conjunto de sentencias un nmero conocido de veces.
La estructura general es:
Ejemplo 5.8:
Escribir un programa para sumar los nmeros enteros de 1 a 50.
Solucin:
Ejemplo 5.9:
Que hace el siguiente programa? (Qu problema resuelve?):
23
Ing. Hugo Marcelo Muriel Arriaran
2 Mientras
Ejecuta sus sentencias mientras se cumpla la condicin.
Ejemplo 5.10:
Dado un capital C, que se coloca a un inters I averiguar al cabo de
cuantos aos se duplicar.
Pseudocdigo:
Algoritmo Capital
Var cap, int:real , anios:entero
INICIO
imprimir Ingrese el capital
leer cap
imprimir Ingrese el interes
24
Ing. Hugo Marcelo Muriel Arriaran
leer int
anios0
capOriginalcap
mientras(cap<(capOriginal*2))
capcap+cap*int
anioanio+1
fin_mientras
imprimir Cantidad aos:+anio
FIN
Ejemplo 5.11:
25
Ing. Hugo Marcelo Muriel Arriaran
Solucin:
26
Ing. Hugo Marcelo Muriel Arriaran
CAPITULO 6
Funciones y
Procedimientos
6. Funciones y Procedimientos
Qu son los subprogramas?
Los subprogramas son una solucin a una parte de un problema. Bajo la idea de
divide y vencers es una poderosa manera de solucionar problemas. La pregunta est
en como dividir para vencer?
Problema Solucin
Subproblema 1 Solucin 1
Subproblema 2 Solucin 2 Solucin
.. ..
Subproblema n Solucin n
Criterios
Parmetros
Clasificacin subprogramas
Procedimientos
Como un subprograma no devuelve ningn valor se lo debe llamar con la palabra Call
de la siguiente manera:
27
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 6.1:
Hacer un procedimiento que muestre la suma de dos nmeros.
Solucin:
Funciones
Para llamar una funcin slo hay que guardar su valor devuelto en una variable. Por
ejemplo:
Aqu la funcin se llama funcionA que recibe un entero y que devuelve un entero, por
eso se guarda su valor devuelto en un entero.
Ejemplo 6.2:
Hacer una funcin que devuelva el rea de un rectngulo. Debe recibir como datos la
base y la altura que son enteros.
28
Ing. Hugo Marcelo Muriel Arriaran
Solucin:
Ejemplo 6.3:
n n n n n 1 n n
(a + b )n = a n + a n 1b + a n 2 b 2 + ... + ab + b
0
1
2 n 1 n
29
Ing. Hugo Marcelo Muriel Arriaran
Se pide realizar un programa que permita calcular el valor del binomio de Newton
para dos nmeros a y b, con exponente n.
30
Ing. Hugo Marcelo Muriel Arriaran
31
Ing. Hugo Marcelo Muriel Arriaran
CAPITULO 7
Arreglos
7. Arreglos
Qu es un arreglo?
Un arreglo es una estructura de datos, lo quiere decir que en l se pueden
guardar datos. Es una agrupacin de datos del mismo tipo, por decir enteros,
reales, y otros ms. Se le da un nombre, el tipo de datos que contiene y adems la
cantidad de datos que puede contener.
7.1. Vectores
Un vector es un arreglo unidimensional, es decir slo tiene una dimensin.
32
Ing. Hugo Marcelo Muriel Arriaran
33
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 7.2: Escriba una funcin tabla_multiplos que reciba como entrada un
nmero entero y devuelva una tabla con los 10 primeros mltiplos de dicho
nmero.
Solucin:
34
Ing. Hugo Marcelo Muriel Arriaran
Solucin:
35
Ing. Hugo Marcelo Muriel Arriaran
7.2. Matrices
Las matrices son un tipo de arreglo bidimensional es decir tiene tanto filas como
columnas.
Ejemplos naturales de ste tipo de arreglos son las tablas en las cuales se
manejan tanto filas como columnas.
Ejemplo 7.4:
Las notas de un curso de 6 alumnos de un colegio, correspondientes a 5
asignaturas diferentes se ingresan alumno por alumno. Considerando que los
nombres de los alumnos y de las materias pueden ser representados por
nmeros, disear y programar una aplicacin que permita calcular la media de
las notas de cada alumno y la media de cada asignatura.
Solucin:
36
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 7.5:
Una empresa que tiene diez almacenes, necesita crear un programa que lea las
ventas mensuales de los diez almacenes (se registran las ventas de cuatro
semanas), calcule la media de ventas y obtenga un listado de los almacenes
cuyas ventas mensuales son superiores a la media, adems el programa debe
listar el nmero de almacn ms y menos importante para la empresa.
Solucin:
37
Ing. Hugo Marcelo Muriel Arriaran
38
Ing. Hugo Marcelo Muriel Arriaran
39
Ing. Hugo Marcelo Muriel Arriaran
40
Ing. Hugo Marcelo Muriel Arriaran
CAPITULO 8
Cadenas de
caracteres y Archivos
8. Cadenas de caracteres y Archivos
8.1. Cadenas
Las cadenas son una secuencia de caracteres, ya se les dio uso bajo el tipo de
dato String.
Existen una serie de funciones bastante tiles para el manejo de las cadenas,
estas funciones permiten manipular las mismas, las ms importantes se resumen
en la tabla 8.1
41
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 8.1:
42
Ing. Hugo Marcelo Muriel Arriaran
8.2. Archivos
8.2.1. Lectura y escritura de archivos secuenciales
1 Apertura y cierre
Dos comandos son los que permiten abrir y cerrar archivos:
OPEN
CLOSE
OPEN:
Open nombreArchivo For modo As # numeroArchivo
donde:
CLOSE:
close # numeroArchivo
Ejemplos:
Open c:\tmp.txt as Output As #1
2 Lectura
Ejemplo 1 Line Input
43
Ing. Hugo Marcelo Muriel Arriaran
sta function se utiliza para leer toda una lnea del archivo en cuestin y lo
devuelve como un valor de retorno.
La forma general es:
Para poder leer todas las lneas del archivo se debe utilizar un ciclo for o
while. Adems es bien til la funcin EOF (fin de archivo) que devuelve
verdad cuando se ha llegado al final del archivo. Una manera de utilizar un
ciclo sera la siguiente:
3 Escritura
Ejemplo 1 Print
Esta funcin se utiliza para poder escribir en un archivo ya abierto en modo
Output o Append. Su uso es bastante sencillo y prcticamente se pueden
escribir variables de todo tipo de dato, as como tambin cadenas
directamente encerradas entre comillas dobles.
Su forma general es:
Ejemplo 8.2:
44
Ing. Hugo Marcelo Muriel Arriaran
45
Ing. Hugo Marcelo Muriel Arriaran
CAPITULO 9
Controles segunda
parte
9. Controles segunda parte
9.1. Botones de opcin (Option Button)
La diferencia con los botones normales es en que stos forman un grupo y slo se
puede seleccionar uno de ellos. Tienen una propiedad Value de tipo Boolean que
slo puede tener valor true para un botn del grupo.
Para agrupar los botones primero se debe colocar un frame (marco) e ir colocando
los botones de opcin dentro el frame. Con esto se garantiza que slo un botn a
la vez sea seleccionado.
Un ejemplo de uso de estos botones es por ejemplo seleccionar el mes de
nacimiento, como es de saberse slo se puede seleccionar un mes y por lo tanto
esto implica a botones de opcin.
46
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 9.1:
Se quiere desarrollar un programa para poder convertir temperaturas de grados
centigrados a grados Fahrenheit. El rango vlido para la temperatura en grados
centgrados es desde -100 a 100 C. Sera ideal incrementar la temperatura de
grado en grado y tambin en saltos de 10 C.
Solucin:
47
Ing. Hugo Marcelo Muriel Arriaran
Cdigo:
48
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 9.2:
El peridico americano New York Times permite el registro de sus lectores va web
para brindarles mejores servicios. Bsicamente lo que se requiere es un formulario
donde se solicite la informacin de inters a cerca del usuario. Para el registro se
agrupan las opciones en tres categoras: crear cuenta, informacin personal y
suscripcin a boletines.
Solucin:
El formulario propuesto es:
49
Ing. Hugo Marcelo Muriel Arriaran
Caption Soltero
OptionButton Name optCasado
Caption Casado
CheckBox Name chkOpcion1
Caption Today's Headlines
CheckBox Name chkOpcion2
Caption Ticket Watch
CheckBox Name chkOpcion3
Caption Movies update
CommandButton Name cmdRegistrar
Caption Registrarse
En la tabla no se incluye el detalle de las etiquetas (Label), es algo que
usted puede hacerlo sin dificultad.
Cdigo:
50
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 9.3:
CumpleAlerta.com es un sitio gratuito de Internet que registra la informacin de las
personas para enviarles un correo de felicitacin el da de su cumpleaos.
Se pide disear y programar una versin simplificada del proceso de registro para
poder enviar las felicitaciones.
Solucin:
Para este caso se utilizar dos formularios y no como en anteriores ejemplos que
se usaba un solo formulario.
51
Ing. Hugo Marcelo Muriel Arriaran
La imagen anterior es el diseo del formulario principal. Los controles y los valores
de sus propiedades se detallan a continuacin.
52
Ing. Hugo Marcelo Muriel Arriaran
Diseo Formulario 2:
53
Ing. Hugo Marcelo Muriel Arriaran
Controles y propiedades:
Cdigo:
El aspecto ms importante es que stos tres controles deben estar enlazados para
mostrar la informacin cuando se haga algn cambio en alguno de ellos. Es decir
se debe mostrar la unidad, directorios y archivos.
Ejemplo 9.4:
Listar los archivos con extensin .doc, .xls correspondientes a archivos Word y
Excel de un directorio seleccionado cualquiera de una unidad de disco.
Solucin:
54
Ing. Hugo Marcelo Muriel Arriaran
Diseo:
Controles y Propiedades:
Cdigo:
55
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 9.5:
Diseo:
Controles y Propiedades:
56
Ing. Hugo Marcelo Muriel Arriaran
Cdigo:
57
Ing. Hugo Marcelo Muriel Arriaran
CAPITULO 10
Manejo de Eventos
10.1.2. Paint
Este evento pinta o repinta el formulario cada vez que ste se muestra,
cambia de tamao o de posicin.
Ejemplo 10.1:
Una sencilla aplicacin que muestre la secuencia en la que se van dando
los eventos se desarrollar en este ejemplo.
58
Ing. Hugo Marcelo Muriel Arriaran
Diseo:
Se realiza el diseo de dos formularios. El primero de los cuales es:
Controles y Propiedades:
Primer formulario:
Segundo formulario:
59
Ing. Hugo Marcelo Muriel Arriaran
Cdigo:
El cdigo para el primer formulario es:
60
Ing. Hugo Marcelo Muriel Arriaran
10.1.3. Focus
En el entorno de trabajo Windows es comn que un solo elemento como
ser un formulario, caja de texto, botn, otros reciba el Foco, es decir que
solamente se puede ingresar datos con el teclado con el elemento
seleccionado. En otras palabras el elemento que tiene el foco es resaltado,
dndoles colore ms vistoso, rodendole de un marco, otros.
Dicha seleccin se puede hacer programando o con la interaccin del
usuario, a travs de ratn o el teclado. En el caso del teclado se utiliza la
tecla Tab.
Dos eventos importantes suceden:
LostFocus: Prdida del foco del elemento.
GotFocus: El elemento recibe el foco.
Diseo:
Controles y Propiedades:
61
Ing. Hugo Marcelo Muriel Arriaran
Cdigo:
Diseo:
En el formulario principal se agregan los controles nuevos.
62
Ing. Hugo Marcelo Muriel Arriaran
Controles y Propiedades:
Cdigo:
63
Ing. Hugo Marcelo Muriel Arriaran
Sobre el formulario:
o Sucede cuando se hace click en cualquier parte del formulario
donde no haya un control activo (propiedad Enabled=False).
Sobre controles:
Los siguientes casos representan interaccin del usuario.
o Cuando se presiona sobre algn control con cualquier botn. En
caso del botn (CommandButton), botn de seleccin y botn de
opcin slo funciona con el botn izquierdo.
o Cuando se selecciona un elemento de una caja combinada.
o Cuando el sistema le da el foco a un control tal como boton, botn
de seleccin, botn de opcin y se presiona la tecla espaciadora.
o En un formulario se puede tener un botn que tenga su propiedad
Default=True que significa que es el botn por defecto, o sea que
si el foco est en el formulario y se presiona la tecla Return (Enter)
equivale a hacer click con el ratn.
o Asimismo tambin puede haber un botn en el formulario que
tenga su propiedad Cancel=True, es decir cuando se presiona la
tecla Esc equivale a hacer click sobre el mismo.
o Las combinaciones Alt+tecla, activan ciertos controles o mens
como en la mayora de los programas Windows. En ste contexto
esa combinacin equivale a hacer click con el ratn.
Con cdigo:
o En alguna parte del programa sera interesante que se active algn
botn despus de una determinada accin por ejemplo.
Botn (CommandButton), se puede cambiar la propiedad
Value=True, que equivale a haber presionado con el ratn
sobre el.
Botn de seleccin (CheckBox), tambin se puede cambiar
el valor de su propiedad Value=True.
Botn de opcin (OptionButton), de igual manera se cambia
el valor de su propiedad Value=True.
64
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 10.4:
El objetivo de ste ejemplo es utilizar los eventos del ratn, para
familiarizarse con su uso.
Diseo:
65
Ing. Hugo Marcelo Muriel Arriaran
Controles y Propiedades:
Cdigo:
66
Ing. Hugo Marcelo Muriel Arriaran
67
Ing. Hugo Marcelo Muriel Arriaran
CAPITULO 11
Cajas de Dilogo
Ejemplo 11.1:
ste es un sencillo ejemplo que permite escribir texto y guardarlo, tambin
permite abrir el archivo guardado. Se usa el manejo de archivos de texto
plano.
Diseo:
68
Ing. Hugo Marcelo Muriel Arriaran
Controles y Propiedades:
Cdigo:
69
Ing. Hugo Marcelo Muriel Arriaran
70
Ing. Hugo Marcelo Muriel Arriaran
CAPITULO 12
Mens
12. Mens
Los mens en Windows son bastante comunes y familiares a la mayora de los
usuarios. Su ventaja principal es que ocupan poco espacio a diferencia de otras
alternativas (controles), slo que sus opciones estn ocultas hasta que se invoque al
men.
12.1.1. Elementos
Caption: Es el ttulo que se mostrar en el men. Aqu se distinguen los
ttulos de mens y los tems de los mismos.
Si se quiere usar mtodos abreviados (Alt+tecla), se debe colocar el
smbolo & delante del carcter que se usar para el acceso por teclado.
71
Ing. Hugo Marcelo Muriel Arriaran
Como ya es habitual se coloca el cdigo dentro de las dos lneas de cdigo que
representan la cabecera y el fin.
Diseo:
72
Ing. Hugo Marcelo Muriel Arriaran
Como se utilizan mens, stos deben ser editados con el Menu Editor de Visual
Basic. Debera quedar como sigue:
Controles y Propiedades:
73
Ing. Hugo Marcelo Muriel Arriaran
Cdigo:
74
Ing. Hugo Marcelo Muriel Arriaran
CAPITULO 13
Utilizacin de
impresoras
13. Utilizacin de impresoras
En Visual Basic existen dos alternativas para poder usar impresoras. Dichas
alternativas son el mtodo (subprograma) PrintForm y el objeto Printer que se
explican a continuacin.
13.1. PrintForm
ste es el mtodo ms sencillo y lo que hace es imprimir el formulario con todo y
controles menos la barra de titulo, es decir imprime tal y como se lo ve en pantalla.
Se debe cambiar el valor de la propiedad AutoRedraw del formulario a True.
La desventaja principal de ste mtodo es que no permite aprovechar al mximo
las caractersticas de las impresoras.
Para usarlo simplemente se debe escribir en el cdigo:
13.2. Printer
ste es el mtodo ms manipulable y a diferencia del primer mtodo no imprime
todo el formulario y los controles. Con ste mtodo se puede imprimir texto y
grficos.
Propiedades ms importantes:
Copies: Indica el nmero de copias.
BackColor: Color de fondo de impresin.
ForeColor: Color de las letras.
FontName = Establece/Devuelve el Nombre de la fuente de letra.
FontBold = Activa o devuelve el estado del estilo Negrita.
FontItalic = Activa o devuelve el estado del estilo Cursiva.
FontUnderline = Activa o devuelve el estado del estilo Subrayado.
FontStrikethru = Activa o devuelve el estado del estilo Tachado.
FontSize = Devuelve/Establece el tamao de letra.
Mtodos ms importantes:
Print: Imprime cadenas de texto.
EndDoc: Enva el documento a la impresora.
PaintPicture: Permite agregar el contenido de imgenes a la impresora.
Su uso general es:
75
Ing. Hugo Marcelo Muriel Arriaran
Constante Valor
vbOk 1
vbCancel 2
vbAbort 3
vbRetry 4
vbIgnore 5
vbYes 6
vbNo 7
Constante Valor
vbOKOnly 0
vbOKCancel 1
vbAbortRetryIgnore 2
vbYesNoCancel 3
vbYesNo 4
vbRetryCancel 5
76
Ing. Hugo Marcelo Muriel Arriaran
Color: Es el color del texto. Para que esta opcin est disponible se debe
colocar la constante Flags=cdlCFEffects.
FontBold (negrita), FontItalic (cursiva), FontUnderline (subrayado),
FontStrikeThru (tachado). Devuelve o establece el valor para los estilos
de fuente.
FontName: Es el nombre de la fuente utilizada.
FontSize: Es el tamao de la fuente.
Flags: Las constantes ms utilizadas son:
o cdlCFEffects: permite seleccionar color para el texto.
o cdlCFPrinterFonts: Indica que las fuentes a mostrar son las del
sistema.
o cdlCFScreenFonts: Indica que las fuentes que se van a mostrar
son los soportados por la impresora.
o cdlCFBoth: Muestra la lista de fuentes del sistema y de la
impresora.
Si se quiere utilizar ms de un valor para Flags hay que recordar que
las constantes citadas no son ms que valores numricos, as que solo
deben sumarse para lograrse ms efectos. Por ejemplo Flags=
cdlCFEffects + cdlCFPrinterFonts.
Diseo:
77
Ing. Hugo Marcelo Muriel Arriaran
Controles y Propiedades:
Cdigo:
78
Ing. Hugo Marcelo Muriel Arriaran
79
Ing. Hugo Marcelo Muriel Arriaran
CAPITULO 14
Bases de Datos
Para poder interactuar con bases de datos MySQL establecer pasos que den
orden y ayuden a estructurar la tarea.
Configurar MySQL
El servidor debe estar correctamente configurado, para ello debe existir al menos
una base de datos creada con informacin que se pueda mostrar.
La versin utilizada por este tutorial es la 5.0.22 disponible en el sitio Web del
programa.
A continuacin los pasos a seguir para configurar el servidor:
La sentencia anterior crea un usuario con todos los privilegios sobre todas las
tablas con el nombre usuario y en el dominio, que generalmente es localhost
si el servidor corre en la misma mquina; WITH GRANT OPTION le habilita
todas las opciones.
80
Ing. Hugo Marcelo Muriel Arriaran
81
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 14.1:
ste ejemplo es directamente aplicable despus de haber configurado
adecuadamente el servidor de base de datos y Visual Basic.
El propsito de ste ejemplo es construir un navegador de base de datos, para ello
es necesario dar la opcin de ingresar datos como el nombre del servidor, la base
de datos, el usuario y la contrasea. Con todos los datos se conecta con dicha
base de datos y se listan las tablas de la misma, cada vez que se selecciona una
tabla se muestra su contenido.
Para este ejemplo se debe crea y usa una base de datos llamada empresa, con
una sola tabla llamada empleado. La tabla empleado contiene el c.i. del empleado,
su nombre, su edad y su salario,
82
Ing. Hugo Marcelo Muriel Arriaran
CAPITULO 16
Application Object
El objeto Application representa a la Aplicacin de Word y es el padre de los
dems objetos. Sus propiedades y mtodos se utilizan para controlar el
entorno de Word.
Document Object
El objeto Document es el punto central de la programacin de Word ya que
representa el Documento que se crea o se abre. Se tiene un Documents
Collection que representa a todos los documentos de la aplicacin. El
documento que tiene el foco del sistema es el ActiveDocument que se
corresponde con la propiedad ActiveDocument del objeto Application.
Selected Object
El objeto Selected representa el rea actual que est seleccionada del
documento. Cuando por ejemplo se desea aplicar un bold (negrita) se
selecciona o resalta texto para aplicarle el estilo. En un objeto Document
siempre est presente el objeto Selection aunque nada est seleccionado.
83
Ing. Hugo Marcelo Muriel Arriaran
Range Object
El objeto Range representa un rea continua en un documento, que est
establecida por un carcter de inicio y uno de fin. Uno no est limitado a un
solo objeto Range en un documento. Se puede definir varios objetos de tipo
Range en un mismo documento. Las caractersticas ms importantes son:
o Puede representar el punto de insercin, un rango de texto o el
documento entero.
o Contiene caracteres que no se imprimen como espacios, tabulados y
marcas de prrafo.
o Puede representar la misma rea de seleccin o un rea diferente.
o No se guarda con el documento y existe slo mientras se est
ejecutando el cdigo.
ste objeto posee mtodos para insertar texto tales como insertAfter,
insertBefore entre otros.
BookMark Object
Un objeto de este tipo es similar a un objeto Range ya que representa un rea
contigua de texto con un carcter de inicio y uno de fin. Se usa para marcar
una posicin en el documento o como un contenedor de texto.
Tambin se pueden definir varios objetos de este tipo en un mismo
documento. Las caractersticas ms importantes son:
o Se le puede dar un nombre al objeto.
o Los BookMarks son guardados con el documento, por lo tanto no
desaparecen cuando se detiene de ejecutar el cdigo.
Document Object
Es importante notar que un documento est compuesto por caracteres que
componen palabras, las palabras estructuran sentencias (lneas), las lneas
a su vez prrafos, que a su vez pueden estar dentro de secciones. Cada
seccin contiene sus propios encabezados y pies de pgina. El objeto
document maneja todas estas caractersticas.
Operaciones:
Crear Nuevos Documentos
Para ello se debe usar el mtodo Add de Document para crear un
nuevo documento basado en la plantilla Normal.dot. Para crear un
documento basado en otra plantilla se le debe pasar como argumento a
Add la ruta de la plantilla.
84
Ing. Hugo Marcelo Muriel Arriaran
Guardar Documentos
El mtodo Save de Document guarda los cambios efectuados en el
documento. Para especificar el nombre debera usarse Documents de
Application pasndole el nombre como argumento de la siguiente
manera:
Application.Documents(Nombre).Save
Cerrar Documentos
Para cerrar documentos se usa el mtodo Close de Document.
Alternativamente recibe un estado de los cambios, es decir si quieren
guardar los cambios directamente, preguntando o descartar los
cambios. Dichas opciones de guardar son: wdSaveChanges,
wdDoNotSaveChanges y wdPromptToSaveChanges.
Ejemplo 15.1:
Este es el primer ejemplo de interaccin con Word y para que funcione
correctamente se debe activar lo siguiente:
En Proyecto/Componentes debe estar activada la casilla
Microsoft Common Dialog 6.0
En Proyecto/Referencias debe estar activada la opcin
Microsoft Word 11.0 Object Library
Diseo:
Diseo Mens:
85
Ing. Hugo Marcelo Muriel Arriaran
Controles y Propiedades:
Cdigo:
86
Ing. Hugo Marcelo Muriel Arriaran
87
Ing. Hugo Marcelo Muriel Arriaran
15.1.3. Macros
1 BVA y Macros
Una macro es procedimiento personalizado o tareas automticas. Es til
para agilizar las tareas en Word y en todas las aplicaciones de Microsoft
Office.
BVA significa Visual Basic para aplicaciones, y es el lenguaje que se utiliza
para programar Macros.
Claro que se pueden crear Macros sin BVA pero no se le podr pedir que
haga todo lo que uno desea.
2 Almacenamiento
Para guardar una Macro se pide elegir si slo funcionar para ese
documento o para todos los documentos de ese tipo.
Por ejemplo si se deseara crear una macro que automticamente coloque
encabezado y pi de pgina, sera bueno que est disponible para todos
los documentos.
3 Comenzando con la Macro
Cuando se comienza con la macro uno se debe planear los pasos y
comandos que este va a ejecutar.
Ahora si se quiere que la Macro est disponible para todos los
documentos hay que verificar que no dependa del documento.
4 Creando Macros
Existen dos maneras de crear macros:
Ejemplo 1 Usar el editor de macros (Grabar una macro)
Es la manera ms sencilla de crear Macros, lo que hace es crear una copia
de todos los comandos que se seleccionan con el ratn, mientras se est
grabando la macro el puntero del ratn se pone en forma de un cassette.
La observacin a sta forma es que el ratn slo se usa para seleccionar
comandos y no as el texto del documento, para lo cual hay que utilizar el
teclado.
Para grabar una macro se debe seguir los siguientes pasos:
1. Abrir cualquier documento.
2. Hacer click en Herramientas/Macros y seleccionar Grabar nueva
macro
3. Aparece una ventana que tiene por ttulo Guardar como Se
escribe un nombre para la macro. Ahora se elige una de dos
opciones Barras o Teclado, lo que indican es si la Macro creada
se acceder desde una barra de herramientas o con acceso directo
del teclado.
4. Seleccionar en Guardar macro en todos los documentos o slo el
documento actual.
5. En Descripcin se coloca una breve descripcin de lo que hace el
macro, la fecha y el autor.
6. Finalmente se selecciona aceptar y comienza la grabacin de la
macro.
7. En cualquier momento se puede pausar o detener la grabacin de
la macro con los botones que aparecen:
88
Ing. Hugo Marcelo Muriel Arriaran
5 Ejemplos
Ejemplo 1 Crear una Macro que agregue el encabezado y
pi de pgina.
Se usar el grabador de macros.
1. Abrir un documento en blanco de Word
2. Hacer click en herramientas/macro/grabar nueva macro
3. Nombre de la macro: EncabPie
4. Guardar macro en: Todos los documentos
5. Escoger barras ( )
6. Escoger comandos y hacer click sobre la macro y sin soltarla
arrastrarla hasta una barra de herramientas y finalmente soltarla.
Atencin: En principio aparecer un nombre largo en la barra de
herramientas y se activar la opcin Modificar seleccin en la ventana
de la macro.
7. Click sobre Modificar Seleccin y cambiar el nombre, cambiar la
imagen de la macro por una de las existentes y escoger el estilo
predeterminado.
8. Click en Cerrar. Comienza la grabacin.
Los siguientes pasos describen como colocar el encabezado y pi de
pgina.
9. Seleccionar men Ver/Encabezado y pi de pgina.
10. Click en Insertar autotexto y seleccionar nombre del archivo y
colocarlo en la esquina derecha del documento.
11. Cambiarle la fuente a Arial tamao 8 y colocar una lnea de subrayado.
12. Cambiarse al pie de pgina con el botn ( ), hacer click en Insertar
Autotexto, seleccionar Autor, Pgina, Fecha.
13. Cambiar la fuente a Arial tamao 8, colocar una lnea superior a todo el
pi de pgina.
14. Detener la grabacin.
89
Ing. Hugo Marcelo Muriel Arriaran
90
Ing. Hugo Marcelo Muriel Arriaran
91
Ing. Hugo Marcelo Muriel Arriaran
1 Creacin de Macros
Grabacin de Macros
92
Ing. Hugo Marcelo Muriel Arriaran
2 Macros Personales
Una macro personal no es ms que la Macro grabado en el libro
Personal.XLS que como se dijo antes est disponible para todos los libros
de Excel.
3 Ejemplos de Macros
La necesidad de las macros surge precisamente de las tareas repetitivas y
una vez que se comienza a utilizar los beneficios de las macros es muy
difcil dejar de trabajar sin ellos.
Existen una infinidad de posibilidades de Macros, a continuacin se
presentan un conjunto de macros bastante tiles.
Ejemplo 1
Realizar una Macro que alinee celdas a la izquierda o a la derecha.
93
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 2
En ste ejemplo se hace una pequea macro que permita cambiar de
bolivianos a dlares.
Ejemplo 3
La macro siguiente permite redondear el valor de las celdas seleccionadas
a slo dos decimales.
94
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 4
Todos los ejemplos que siguen utilizan el archivo Ejemplos
format.XLS.
Encuentra el mayor nmero de un conjunto de celdas
seleccionadas.
Solucin 1:
Solucin 2:
95
Ing. Hugo Marcelo Muriel Arriaran
Solucin 3:
Ejemplo 5
A partir de las races de una ecuacin de segundo grado
reconstruye la ecuacin.
96
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 6
Averigua en cuantos aos se duplica un capital puesto a un
inters y adems cual es el monto acumulado hasta ese ao.
97
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 7
Activa (muestra) una por una las hojas del libro activo.
Ejemplo 8
Activa (Muestra) una determinada hoja de acuerdo a que se
elija una determinada opcin.
El diseo se encuentra en el archivo Ejemplos format.xls.
98
Ing. Hugo Marcelo Muriel Arriaran
Cdigo:
99
Ing. Hugo Marcelo Muriel Arriaran
100
Ing. Hugo Marcelo Muriel Arriaran
Cargar Macro
Hay veces que ya se tienen proyectos hechos con VBA que trabajan
con Autocad. Cuando se desea cargar un proyecto se debe ir otra vez a
Herramientas/Macro/Cargar Proyecto y seleccionar la ubicacin y nombre
del proyecto.
Ejecutar Macro
Dos alternativas:
En el men Herramientas/Macro/Macros se selecciona la macro y
se hace click en ejecutar.
Desde la lnea de comando de Autocad se escribe: vbaejecutar. La
instruccin muestra la ventana de macros de donde se elige la
macro y se la ejecuta.
La lnea de comandos tiene este aspecto:
101
Ing. Hugo Marcelo Muriel Arriaran
Ejemplo 15.3.4: ste es el ejemplo modificado para que funcione con las
ltimas versiones de Excel ya que el ejemplo original de Autocad se basa
en Excel 97. Para poder utilizar el ejemplo se debe cargar el macro
contenido en el archivo: Exceling.dvb y adems abrir el archivo de dibujo
attrib.dwg que es sobre el cual se aplica la macro.
102