Sunteți pe pagina 1din 43

Visual Basic 6.

El entorno de Visual Basic

Cuando iniciamos Visual Basic, nos mostrar la siguiente


Ventana donde podemos seleccionar, que es lo que
vamos a desarrollar.
En este curso nos centraremos en la primera opcin que
es un Estndar EXE.
Seleccionamos Standard EXE y Seleccionamos Abrir.

Luego le aparacer el entorno inicial de Visual Basic :


Barra de men
Barra de Herramientas

Explorador
de Proyectos
(3)

Cuadro de
herramientas
(5)
Ventana de
Propiedades
(4)

Ventana de
Posicin de
formulario

Ventana del formulario


inicial
(2)

Visual Basic 6.0

En la ventana del programa, podemos hacer todas las funciones normales que nos permite el
compilador Visual Basic.
Cierre todas las ventanas excepto el programa Visual Basic
Pulse "Ctrl+R" (Ver -> Proyecto) y se abrir el Explorador de Proyectos (3).
En esta ventana tenemos todos los ficheros del proyecto Visual Basic en el que vamos a trabajar.
Al principio y por defecto, el programa abre un formulario (2) con el nombre Form1 que es la
ventana Windows de nuestra aplicacin.
Podemos editar, abrir y cerrar la ventana, pero todo esto lo veremos a fondo ms tarde. De
momento es fundamental que se familiarice con estas ventanas que aparecen al iniciar Visual
Basic.
Pulsando la tecla "F4", aparecer la ventana de propiedades (4). Esta ventana es fundamental, ya
que contiene todas las propiedades de cada objeto que insertaremos en nuestro formulario, asi
como las propiedades del formulario en s.
Por ltimo, la ventana caja de herramientas (5), no es menos importante, ya que contiene todos los
objetos que podemos incluir en nuestro formulario. Esta ventana se puede abrir en el men
principal (Ver -> Caja de herramientas).
Esta es la visin general del compilador Visual Basic, pero hay como bien se imaginar usted,
muchas otras cuestiones que son importantes tener en cuenta.

El Proyecto
Cada vez que creamos un Sistema, crearemos un Proyecto (Proyect) al cual lo salvaremos con las
siglas del sistema que estamos desarrollando (Ej. SCI). Un proyecto es un organizador de nuestro
Sistema, en l podemos agregar Formularios, Reportes, Modulos (codigo), entre otros.

Para agregar objetos a nuesto proyecto, nos ubicamos en la


ventana del proyecto, presionamos el click derecho del mouse,
seleccionamos Agregar (Add) y luego nos sale una lista de todo lo
que podemos agregar :
-

Formularios (Form)
Formularios MDI (MDI Form)
Modulos (Module)
Reportes (Data Report)
Entre otros.

Visual Basic 6.0

El Objeto formulario (form)


Antes de comenzar con los formularios es necesario comprender la Interfaz de Desarrollo de
Sistemas en Visual Basic:
SDI : Interfaz de un Solo Documento (Formularios Independientes)
MDI : Interfaz de varios Documentos, MDI quiere decir que todas las ventanas forman parte de una
ms grande. Esta interfaz es la que utilizaremos en el curso, Donde el formulario principal ser un
Formulario MDI (MDIform) y los demas formularios formaran parte de l (MDIChild)
En nuestro proyecto tendremos un solo formulario MDI y todos los demas formularios pertenecern
a l ( la propiedad MDIChild habr que fijarla en True)

Propiedades mas comunes:


Nombre
Name
BackColor
BorderStyle
Caption
ControlBox

Descripcin
Nombre del formulario (Ej. FrmRegiones)
Color de fondo del Formulario
Estilo del Borde de la Ventana : Sirve para permitir el Ajuste del tamao de la
Ventana o no.
Titulo de la Ventana
Permite habilitar/Desahabilitar el Menu de Control de la Ventana.

Icon
MaxButton
MDIChild
Minbutton
Moveable
Picture
WindowState

Se espefica el nombre del archivo de Icono de la Ventana. (*.ico)


Permite Habilitar/Deshabilitar el Boton para maximizar la ventana
Para determinar si esta ventana pertenece a una Ventana MDI.
Permite Habilitar/Deshabilitar el Boton para minimizar la ventana
Permite Habilitar/Deshabilitar si la ventana se puede mover por el usuario
Permite Poner una imagen de fondo de la Ventana (Como un papel Tapiz)
Permite vizualizar el formulario de forma Normal, maximinzada o minimizada.

La ventana de propiedades:
Nombre del objeto
al cual le modifica
las propiedades

Descripcin de la
propiedad
Propiedades del
objeto

Visual Basic 6.0

Para ejecutar el formulario y verlo como se comportar segn las propiedades que le hemos fijado
siga las siguientes instrucciones:
1. Seleccione en el menu principal la opcin de
Proyecto (Proyect).
2. Luego seleccione la ltima opcin que es
Propiedades del Proyecto (Proyect1 Properties).
3. Seleccione el objeto que desea ejecutar y luego
presione el botn Aceptar.
4. Presione el botn de la barra de herramientas
Iniciar (Start)
5. Si quiere ejecutar un objeto diferente repita los pasos
del 1 al 4.

Al ejecutar el formulario usted podr observar como se


comporta en modo ejecucin.
Para detener la ejecucin : presione el botn de parada o
o cierreel formulario como comunmente lo hace con
cualquier ventana.

Eventos mas comunes de los formularios:


Nombre
Click
Load
UnLoad
Error

Descripcin
Sucede cuando presionamos una vez el botn izquierdo del mouse sobre el
formulario.
Ocurre cuando se inicia el formulario
Ocurre cuando finaliza el formulario
Sucede cuando a ocurrido un error en la ejecucion del codigo dentro del formulario

Visual Basic 6.0

Eventos del Formulario

Para ver los eventos de un objeto (en este caso del formulario):
presione click derecho encima del objeto (formulario) y luego
seleccionamos Ver Cdigo (View Code).

La siguiente ventana aparacer donde se muestran


el objeto (Lista izquierda superior) y la lista de los
eventos (derecha superior).
Podremos observar que tambien en la lista de la
derecha superior se encuentra la seccin General,
donde se declaran todas las variables que se
ocuparn en el formulario.
Tambin podemos configurar el modo en que
vizualizaran los eventos, en lo particular yo
utiliz Vista de Procedimiento (Procedure View), para vizualizar cada evento independientemente.

Podemos escribir el siguiente codigo en el evento Click del Formulario:


MsgBox "Hice click en el Formulario"
Cuando ejecutemos el formulario y le demos un click encima del formulario veremos el siguiente
mensaje:

Visual Basic 6.0

Modificacin de las propiedades en modo Ejecucin

Existen propiedades que podemos modificar en modo diseo (con la ventana de propiedades) y en
modo ejecucin (con cdigo). Sin embargo hay otras propiedades que solo se puede modificar en
modo diseo.

Ejemplo:

En el formulario agregremos un boton de comando


(CommandButton) del Cuadro de Herramientas (ToolBox).
Luego fijaremos la propiedad Caption del boton a "Cambiar
Propiedades del Formulario"

En el evento click del Boton digitaremos las


siguientes instrucciones:
Form1.BackColor = vbBlue
Form1.Caption = "Cambiar Caption"
Nota: vbBlue es una Constante predefinida de
VB.
Ejecutamos el formulario:

Cuando damos click en


el botn las
propiedades son
modificadas

Esta sintaxis de Programacin Orientada a Objetos es la que utilizaremos cuando programamos


con Visual Basic. Practicamente solo es conocer las propiedades de cada objeto y luego
modicarlas ya sea en modo diseo o en modo ejecucin.

Visual Basic 6.0

Uso de los Controles estndar de Visual Basic

Cuadro de
Herramientas de
Visual Basic.

Categoras de Controles:
Controles intrnsecos: Estos controles se encuentran dentro del archivo .exe de Visual Basic.
Los controles intrinsecos siempre estan incluidos en el cuadro de herramientas, no como los
controles ActiveX y los objetos insertables, que se pueden quitar o agregar al cuadro de
herramientas.
Controles ActiveX: Existen como archivos independientes con extensin .ocx.
Objetos Insertables : Objetos OLE, uno puede insertar un objeto Worksheet (Hoja de Calculo)
de Microsoft Excel o un Documento de Word o alguna imagen incrustada.

Controles Intrnsecos

El cuadro de herramientas de Visual Basic contiene las herramientas que puede utilizar para
dibujar controles en los formularios.

ICONO

NOMBRE DEL CONTROL

NOMBRE DE CLASE

Casilla de Verificacin

CheckBox

Cuadro Combinado

ComboBox

Botn de comando

CommandButton

Datos

Data

DESCRIPCION
Presenta una opcin de tipo Verdadero o
Falso, o S o No. Puede activar varias casillas
de verificacin en un mismo formulario al
mismo tiempo
Cambia un cuadro de texto y un cuadro de
lista. Permite que el usuario escriba una
seleccin o seleccione un elemento de una
lista desplegable.
Ejecuta un comando o una accin cuando un
usuario hace clic en l

Permite conectar con una base de datos


existente y presentar informacin de ella en
los formularios

Visual Basic 6.0

ICONO

NOMBRE DEL CONTROL

NOMBRE DE CLASE

DESCRIPCION

Cuadro de lista de directorios

DirListBox

Presenta directorios y rutas de acceso, y


permite que el usuario los seleccione.

Cuadro de lista de unidades

DriveListBox

Presenta unidades de disco validas y permite


que el usuario las seleccione

Cuadro de lista de archivos

FileListBox

Presenta una lista de archivos y permite que


el usuario los seleccione.

Marco

Frame

Proporciona un contenedor visual y funcional


para otros controles

Barras de desplazamiento
horizontal y vertical

HscrollBar y VscrollBar

Imagen

Imagen

Etiqueta

Label

Presenta texto con el que el usuario no


puede interactuar ni modificar.

Lnea

Line

Agrega un segmento de lnea recta a un


formulario

Cuadro de lista

ListBox

Presenta una lista de elementos entre los


que el usuario puede elegir.

Contenedor OLE

OLE

Incrusta datos en una aplicacin de


Visual Basic.

Botn de opcin

OptionButton

Cuadro de imagen

PictureBox

Permite que un usuario agregue barras de


desplazamiento a controles tienen de forma
automtica. (No son las barras de
desplazamiento incorporadas que se incluyen
en muchos controles.)
Presenta mapas de bits, iconos o metarchivos
de Windows, archivos JPEG o GIF, y acta
como un botn de comando cuando se hace
clic en l.

El control OptionButton, como parte de


un grupo de opciones con otros botones
de opcin, presenta varias opciones
entre las que el usuario solo puede elegir
una.
Presenta mapas de bits, iconos o
metarchivos de Windows, archivos JPEG
o Gif. Tambin presenta texto o acta
como contenedor visual para otros
controles.

Visual Basic 6.0

ICONO

NOMBRE DEL CONTROL

NOMBRE DE CLASE

DESCRIPCION
Agrega un rectngulo, un cuadrado, una
elipse o un circulo a un formulario, marco
o cuadro de imagen

Forma

Shape

Cuadro de Texto

TexBox

Proporciona una arrea para escribir o


presentar texto

Cronometro

Timer

Ejecuta eventos peridicos a intervalos


de tiempo especificados

Nota: La herramienta puntero (la primera herramienta del cuadro de herramientas) proporciona una
forma de mover y cambiar el tamao de los formularios y los controles. No es un control.

Controles Active X estndar


Visual Basic contiene varios controles ActiveX (llamados controles ActiveX estndar) que permiten
agregar caractersticas avanzadas a las aplicaciones. Los controles ActiveX tiene la extensin
nombre de archivo.ocx y puede utilizarlos en un proyecto si los agrega manualmente al cuadro de
herramientas.

Los controles ActiveX estndar agregados al cuadro de herramientas

Para agregar estos ActiveX estndar al cuadro de herramientas :

1. En el cuadro de Herramientas presione el botn derecho del mouse y


seleccione Componetes (Components...)

2. Luego le aparecer la sig. Ventana con la una


lista de componetes que puede insertar
Seleccin solamente los Controles ActiveX
Estandar, como son:
- Microsoft Common Dialog Control
- Microsoft Data Bound Grid Control
- Microsoft Data Bound List Control
- Microsoft FlexGrid Control

3. Presione el boton de Acepar.

Visual Basic 6.0

En la tabla siguiente se enumeran los controles ActiveX estndar disponibles en Visual Basic.

ICONO

NOMBRE DEL CONTROL

NOMBRE DE CLASE

Dialogo comn

CommonDialog

Cuadro combinado enlazado DBCombo


de datos

Cuadricula Apex enlazada a DBGrid


datos

Cuadro de lista enlazado a DBList


datos

FlexGrid de Microsoft

MSFlexGrid

DESCRIPCION
Proporciona un conjunto de cuadros de
dialogo estndar para operaciones como
abrir y guardar archivos, establecer
opciones de impresin y seleccionar
colores y fuentes.
Proporciona la mayora de las funciones
del control.
ComboBox estndar, as como macro
capacidad de acceso a datos.
Control con apariencia de hoja de calculo
y con enlaces de datos que presenta una
serie de filas y columnas que representa
una serie de filas y columnas que
representan registros y campos de un
objeto RecordSet.
Proporciona
la
mayora
de
las
caractersticas del control ListBox
estndar, as como mayor capacidad de
acceso a datos.
Es similar al control DBGrid, pero tiene
caractersticas adicionales de formato,
agrupacin y enlace de datos, adems
de opciones de personalizacin.

Visual Basic 6.0

Convenciones de nomenclatura de los objetos

Cuando crea u objeto (un formulario o un control) por primera vez, Visual Basic establece su
propiedad Name a un valor predeterminado. Por ejemplo, todo los botones de comando tienen la
propiedad Name establecida inicialmente a Commandn, donde n es 1, 2, 3 y as sucesivamente.
Visual Basic llama al primer botn de comando de un formulario Command1, al segundo
Command2 y al tercero Command3.
Puede mantener los nombres predeterminados, sin embargo cuanto tiene varios controles del
mismo tipo, es ms lgico modificar las propiedades Name para que sean algo ms descriptivas.
Como puede ser difcil distinguir entre el botn Commnad1 de MiForm y el botn Command1 de
SuForm, la convencin de nomenclatura es recomendable, especialmente cuando una aplicacin
se compone de varios mdulos de formulario, mdulos estndar y mdulos de clase.
Puede utilizar un prefijo para describir la clase, seguido de un nombre descriptivo del control. El
uso de eta convencin de nombre hace que el cdigo sea mas autodescriptivo y agrupa objetos
similares alfabticamente en el cuadro de lista Objeto.
Los nombres de los formularios y los controles:
Deben empezar por una letra
Solo deben contener letras, nmeros y carcter de subrayado (_); no se permiten signos de
puntuacin ni espacios en blanco.
No pueden tener una longitud mayor de 40 caracteres.

Uso del valor de un control


Todos los controles tienen una propiedad que se puede utilizar para almacenar u obtener valores
mediante una referencia al control, sin mencionar el nombre de la propiedad. Esto se denomina
valor del control y normalmente es la propiedad ms importante o la mas frecuentemente utilizada
del control. En la tabla siguientes enumeran las propiedades consideradas como valor de cada
control.

Control

Propiedad

Casilla de verificacin

Value

Cuadro combinado

Text

Botn de comando

Value

Dialogo comn

Action

Datos

Caption

Cuadro combinado enlazado a datos

Text

Caudricula enlazada a datos

Text

Cuadro de lista enlazado a datos

Text

Visual Basic 6.0

Control

Propiedad

Cuadro de lista de directorios

Path

Cuadro de lista de unidades

Drive

Cuadro de lista de archivos

FileName

Marco

Caption

Barra de desplazamiento horizontal

Value

Imagen

Picture

Etiqueta

Caption

Linea

Visible

Cuadro de lista

Text

Botn de opcin

Value

Cuadro de imagen

Picture

Forma

Shpe

Cuadro de texto

Text

Cronometro

Enabled

Barra de desplazamiento vertical

Value

El siguiente ejemplo muestra como se puede utilizar el valor de un control:

Me: se refiere al formulario.

Visual Basic 6.0

Controles Estndar de Visual Basic


Uso del Control PictureBox
El Control PictureBox presenta mapas de bits, iconos o metarchivos de Windows, archivos JPEG o
Gif.

Cuando inserta el Control PictureBox observar lo


siguiente.
La propiedad mas comn para este control es Picture,
que puede ser modificada en modo diseo o en modo
ejecucin.

La asignacin de una imagen en modo ejecucin se hace


con la funcin LoadPicture. Para ejemplificar sto
insertaremos un botn en el formulario y luego le
asignaremos el siguiente cdigo al evento click:
Me.Picture1.Picture = LoadPicture("c:\mix\cursoVB\graficos\vbasic.jpg")

Cuando Ejecutamos el formulario y presionamos el botn Fijar Imagen, la imagen es mostrada en


el control.

Visual Basic 6.0

Uso del Control FileListBox

El control FileLisBox Presenta una lista de archivos y


permite que el usuario los seleccione.

Propiedades ms comunes:
Nombre
Name
Pattern
Path
FileName

Descripcin
Nombre del Control.
Indica los archivos que sern desplegados por el control (Ej: *.*, *.bmp, *.jpg, etc)
Ruta de acceso de donde se desplegarn los archivos
(disponible solo en modo ejecucin)
Nombre del archivo seleccionado

Evento ms comn:
Nombre
Click

Descripcin
Cuando presionamos el botn izquierdo del Mouse sobre el control

Ejemplo:
Modificaremos la propiedad Pattern y la fijaremos con *.bmp, para que despliegue todos archivos
con extensin BMP.

En el evento Load del formulario configuraremos el objeto file1,


para que despliegue los archivos del directorio Windows:
Me.File1.Path = "c:\windows"

Luego en evento Click del Control


FileListBox, Introduciremos el
cdigo siguiente:

Me.Picture1.Picture = LoadPicture(c:\windows\ & Me.File1.FileName)

Ahora cuando ejecute el formulario, mostrar las imgenes del directorio Windows y cuando usted
le d click en algun archivo, la imagen se mostrar en el control PictureBox.

Visual Basic 6.0

Uso del Control DirListBox

Presenta directorios y rutas de acceso, y permite que el usuario los seleccione

El Control DirListBox en el Formulario.

Propiedades ms comunes:
Nombre
Name
Path

Descripcin
Nombre del Control.
Ruta de acceso de donde se desplegarn los archivos
(disponible solo en modo ejecucin)

Evento ms comn:
Nombre
Change

Descripcin
Ocurre cuando el usuario selecciona un directorio diferente.

Ejemplo:

En el evento Load del formulario modificaremos el cdigo de la


siguiente manera:
Me.File1.Path = "c:\"
Me.Dir1.Path = "c:\"

En el evento Change del Control de Directorios (Dir1)


pondremos el siguiente codigo:
Me.File1.Path = Me.Dir1.Path

Visual Basic 6.0

En el evento Click del Control de Archivos (File1) modificaremos el codigo siguiente:


Me.Picture1.Picture = LoadPicture(Me.Dir1.Path & "\" & Me.File1.FileName)

Ejecutamos el formulario y ahora podemos seleccionar el directorio y cuando lo seleccionamos nos


muestra los archivos *.bmp de ese directorio.

Uso del Control DriveListBox

El control DriveListBox presenta unidades de disco


validas y permite que el usuario las seleccione.

En el evento Change podremos el siguiente codigo:


Me.Dir1.Path = Me.Drive1.Drive

Propiedades ms comunes:
Nombre
Name
Drive

Descripcin
Nombre del Control.
Contiene la unidad de disco seleccionada

Evento ms comn:
Nombre
Change

Descripcin
Ocurre cuando el usuario selecciona una unidad diferente.

Visual Basic 6.0

Uso del Control OptionButton

El control OptionButton, como parte de un grupo de opciones con otros botones de opcin,
presenta varias opciones entre las que el usuario solo puede elegir una.
Propiedades ms comunes:
Nombre
Name
Value
Caption

Descripcin
Nombre del Control.
True: Cuando esta seleccionado
False: Cuando esta sin seleccin
Contiene la Etiqueta que se mostrar al usuario

Evento ms comn:
Nombre
Click

Descripcin
Ocurre cuando el usuario selecciona una unidad diferente.

Ejemplo: Crearemos la siguiente lista de opciones para mostrar los tipos de archivos.

Para ello veremos que tendremos que crear una matriz de controles.
Matriz de Controles: Conjunto de controles del mismo tipo.

Para crear la matriz de controles de OptionButton realizamos lo siguiente:


1. Ponemos el Primer OpctionButton en el formulario
2. Luego lo copiamos y pegamos(
y
)
3. Inmediatamente le aparecer el mensaje de que si desea crear un Arreglo de Controles (Control
Array), entoces respondemos que si.
4. Para crear la siguiente opcin copie y pegue el mismo control.
Los controles tomaran los nombres que aparecen en la figura. El
nmero que esta entre parentesis es el Index (nmero indice).

Siguiendo con el ejemplo, pondremos a True la propiedad value del Option1(0).


Luego en el Evento Click del control pondremos el siguiente cdigo:
Private Sub Option1_Click(Index As Integer)
If Index = 0 Then
Me.File1.Pattern = "*.bmp"
End If
If Index = 1 Then
Me.File1.Pattern = "*.gif"
End If
If Index = 2 Then
Me.File1.Pattern = "*.jpg"
End If
End Sub

Visual Basic 6.0

Algunas Funciones Utiles


Funciones de Cadena:

Funcin
Str (nmero)
Val(cadena numrica)
Left (cadena, n)

Right (cadena, n)

Descripcin
Convierte un nmero a una cadena en numeracin decimal.
Obtiene el valor (el nmero) correspondiente a esa cadena.
Extrae los n primeros caracteres de una cadena,
comenzando por la izquierda.
Si cadena = Curso de Visual Basic

(Para todos los ejemplos)

Resultado = Left (cadena, 10)

Resultado = Curso de V

Extrae lo n ltimos caracteres de la cadena


Resultado = Right (cadena, 10)

Mid (cadena, m, n)

String (n, carcter)

Space (n)

Resultado = rso de Vis


Resultado = rso de Vis

---->

Resultado = curso de visual

---->

Resultado = CURSO DE

Devuelve la longitud de la cadena


Resultado = Len (cadena) ---->

LenB (Cadena)

---->
---->

Devuelve otra cadena igual, pero con todos los caracteres


en maysculas. (UCase = Upper Case)
Resultado = UCase (cadena)
VISUAL BASIC

Len (cadena)

Resultado = sual Basic

Devuelve otra cadena igual, pero con todos los caracteres


en minsculas. (LCase = Lower Case)
Resultado = Lcase (cadena)
basic

UCase (cadena)

---->

Extrae n caracteres de la cadena, siendo el primer carcter


extrado el que ocupa el lugar m.
Resultado = Mid (cadena, 3, 10)
Resultado = Mid (cadena, 3, 10)

LCase (cadena)

---->

Resultado = 21

Devuelve el nmero de Bytes empleados para almacenar la


cadena. Sorprndase, es el doble que Len (Cadena)
Devuelve una cadena de n caracteres como el indicado
Resultado = String (8, "a")

---->

Resultado = aaaaaaaa

Resultado = String (8, Chr(65))

---->

Resultado = AAAAAAAA

Resultado = String (8, 65)

---->

Resultado = AAAAAAAA

Devuelve una cadena formada por n espacios.


Resultado = "A" + Space (6)+ "B" ---->

Resultado = A

Visual Basic 6.0

Funcin
Ltrim
Rtrim

Trim

InStr (cadena, cadena1)

Descripcin
Elimina los posibles espacios que tenga una cadena por su
izquierda.
Elimina los posibles espacios que tenga una cadena por su
derecha.
Elimina los espacios que tenga una cadena, tanto por su
izquierda como por su derecha. (No elimina los espacios
centrales de la cadena)
Busca la cadena1 dentro de cadena y devuelve el nmero
de orden dentro de cadena donde se encuentra la primera
letra de cadena1
Resultado = InStr (cadena, "sua") ---->

StrConv

Resultado = 12

Convierte una cadena de caracteres en otra, segn las


instrucciones que le sigan. Puede sustituir a UCase o
LCase si la instruccin es UpperCase o LowerCase
respectivamente, o poner la primera letra de todas las
palabras de la cadena en maysculas, si la instruccin es
ProperCase.
Resultado = StrConv (cadena, UpperCase) ----> Resultado = CURSO
DE VISUAL BASIC
Resultado = StrConv (cadena, LowerCase) ----> Resultado = curso de
visual basic
Resultado = StrConv (cadena, ProperCase)----> Resultado = Curso De
Visual Basic

Visual Basic 6.0

Funciones con Nmeros:

Funcin
Cint
Abs
Sgn
Sqr
Exp

Descripcin
Parte entera, Devuelve la parte entera de un nmero con
decimales
Valor Absoluto,
Devuelve el valor absoluto de un
nmero
Signo, Devuelve el signo de un nmero
Raz cuadrada, Devuelve la raz cuadrada de un nmero
Exponenciacin, Devuelve el nmero elevado al exponente
indicado
Logaritmo, Devuelve el logaritmo natural de ese nmero

Log
Sin
Cos
Tan
Atn
Timer
Randomize (Numero)

Seno, Devuelve el valor del seno de un ngulo (Expresado


en radianes)
Coseno, Devuelve el coseno de un ngulo (En radianes)
Tangente, Devuelve la tangente de un ngulo
Arco Tang. Devuelve un arco cuya tangente sea el nmero
(Angulo en radianes)
Tiempo acumulado, Devuelve el tiempo (en segundos) que
ha pasado desde las 12 de la noche.
Generacin de nmeros aleatorios,
Inicia el generador aleatorio tomando como dato de partida
el Numero. Devuelve el resultado en una variable llamada
Rnd.

NOTA MUY IMPORTANTE.- Los nmeros aleatorios generados de esta forma son
siempre iguales, eso s, dependiendo del nmero que se le introduzca como
parmetro. Esta generacin de nmeros no produce nmeros aleatorios pues como
se dijo, dependen del numero que se meta como parmetro, y si este se repite, se
repite la sucesin de nmeros que nos crea el generador aleatorio.
La forma de obtener nmeros realmente aleatorios es introducir como parmetro un
nmero que sea variable con el tiempo. Ese nmero no puede ser otro que el nmero
timer visto antes. Y siempre con la precaucin de que medie mas de un segundo entre
dos instrucciones Randomize. La funcin toma entonces la forma:
Randomize Timer
La funcin Randomize devuelve una variable Rnd con un nmero comprendido
entre 0 y 1 (Nunca ser 0 ni 1) Leyendo el valor de la variable sucesivas veces, se puede
obtener una sucesin de nmeros aleatorios. No es necesario ejecutar la instruccin
Randomize Timer cada vez que se quiera obtener un dato de la variable Rnd.
Un ejemplo. Generador de nmeros para la Lotera Primitiva
Supongamos que tenemos un formulario con una etiqueta de nombre Label1, un botn de
comando de nombre Command1. Cuando hagamos click sobre el botn de comando

Visual Basic 6.0

deber generar un nmero comprendido entre el 1 y el 49. En el procedimiento click de


Command1 pondremos el siguiente cdigo:

Visual Basic 6.0

Private Sub Command1.click


Randomize Timer
A = Rnd
A = Rnd * 100
A = CInt(A)
Do While A > 49
A = A - 49
Loop
Do While A < 1
A = A + 49
Loop
Label1.caption = A
End Sub
Realice este pequeo programa, con la instruccin Randomize Timer y sin ella.

Visual Basic 6.0

Funciones con fechas:

Las fechas son cadenas especiales. Visual Basic sabe obtener y tratar la informacin
relativa a la fecha y la hora. Dispone para ello de una declaracin de variable: Date. Una
variable declarada como date puede contener una fecha, una fecha y una hora o una hora
solamente.
Funcin
Date
Time
Now
WeekDay
Day
Month
Year
Hour
Minute
Second
DateAdd
DateDiff
DatePart
DateSerial
TimeSerial
DateValue

Descripcin
Devuelve la fecha de hoy. Esta fecha la toma del reloj del
ordenador.
Devuelve la hora actual.
Devuelve la fecha y hora actual.
Devuelve el da de la semana (En nmero, 1=Domingo,
2=Lunes,...)
Obtiene el da, a partir de una fecha
Obtiene el mes a partir de una fecha.
Obtiene el ao a partir de una fecha.
Obtiene la hora a partir de una hora
Obtiene el minuto a partir de una hora.
Obtiene el segundo a partir de una hora.
Aade un intervalo de tiempo a una fecha
Obtiene el intervalo de tiempo entre dos fechas
Devuelve una parte de una fecha (semana, trimestre, etc.)
Compone una fecha a partir de parmetros relativos
Compone una hora a partir de parmetros relativos.
Devuelve una fecha a partir de un dato que se le parezca y
VB pueda obtener de l una fecha vlida

Mediante estas instrucciones podemos obtener el dato necesario de una fecha u hora. Por
ejemplo, para obtener el da de hoy solamente:
Da = Day (Now)

Da ser un nmero

El da de la semana lo obtendramos
Diasemana = WeekDay (Now)

Diasemana ser un nmero

DateValue, una instruccin que le sacar mucho provecho


Fecha = DateValue (120796)
Fecha = DateValue (12 07 96)

Fecha =12/07/96

Visual Basic 6.0

Funcin FORMAT
Esta funcin permite presentar cadenas de numricas o fechas de una determinada
forma. Permite establecer el Formato de esa cadena.
Si recurre a la ayuda de VB acerca de esta funcin se va a enterar muy poco de lo que
puede dar de s. La sintaxis que presenta es :
Format(expresin[, formato[, primerdadesemana[, primerasemanadelao]]])
Lo mejor que puede hacer con esta definicin de la sintaxis de Format es olvidarla. No le
aclara mucho lo que se puede hacer con Format. La funcin Format se usa para poner
una fecha en un determinado formato. Con la expresin :
FechadeHoy = Format (Now, yyyy-mm-dd)
la variable FechadeHoy tendr el valor 1998-05-21, que se refiere al da 21 de mayo de
1998, segn el formato recomendado por la norma ISO-8601 para la presentacin de
fechas. Si hubisemos puesto la expresin FechadeHoy = Format (Now, dd/mm/yy) , la
variable FechadeHoy contendra el valor 21/05/98 referido al da citado.
Las posibilidades de Format llegan tambin al campo de las cadenas numricas. Por
ejemplo la cifra 123456 se transformar en las siguientes expresiones, segn como
empleemos la funcin Format
Variable = Format(123456, "Currency")
Variable = Format(123456, "Standard")

Variable = 123.456 Pts


Variable = 123.456,00

Veamos ahora con un poco mas de conocimiento la sintaxis de Format


Variable = Format (expresin[, formato[, firstdayofweek[, firstweekofyear]]])
Donde
expresin es una cadena o fecha vlida
formato es uno de los formatos predefinidos (Standard, Currency, etc. Vea mas abajo)
firstdayofweek. Especifica el primer da de la semana. Puede tomar uno de estos valores
o constantes :
Constante

Valor

vbUseSystem 0
VbSunday
1
vbMonday
2
vbTuesday
3
vbWednesday 4
vbThursday 5
vbFriday
6
vbSaturday 7

Descripcin

El especificado en el sistema operativo.


Domingo (valor por defecto)
Lunes
Martes
Mircoles
Jueves
Viernes
Sbado

firstweekofyear
Especifica cual es la primera semana del ao. Puede tomar uno de
los siguientes valores o constantes :

Visual Basic 6.0

Constante

Valor

Descripcin

vbUseSystem
vbFirstJan1
Enero(Valor

0
1

Usa el valor del sistema operativo


La primera semana es la que contiene al da 1 de

vbFirstFourDays
ese

por defecto
La primera semana es la que contiene al menos, 4 das de

ao (Rec. ISO - 8601)


La primera semana es la que tiene todos sus das en ese

vbFirstFullWeek
ao

No se complique la vida con el tema del primer da de la semana ni la primera semana del
ao. No lo usar con frecuencia. Centrmonos mas en el parmetro Formato. Puede
tomar muchos valores. Veamos los principales. Primero para nmeros
Observe que usamos la expresin Variable =Format (1234567,Formato) para todos los
ejemplos de nmeros.
Para poner los nmeros separados por millares :
Variable = Format(1234567, "##,###,###") Variable = 1.234.567
(Cada carcter # indica que ah va un nmero. El separador debe ser una coma, no un
punto, aunque esto depende del idioma que est usando)
Puede poner una de estas expresiones, eso si, siempre entre comillas dobles :
General Number
Currency
Fixed
Standard
Percent
Scientific
.
Para fechas
21/07/98

Muestra el nmero tal como lo tecle


En formato de la moneda de su sistema operativo
Sin separador de millar y dos decimales (1234567,00)
Con separador de millares y dos decimales (1.234.567,00)
Multiplica el nmero por cien y lo presenta cono
porcentaje(123456700,00%)
Usa notacin cientfica (1,23E+06)
(Observe que usamos el ejemplo Format(Now, Formato) y Now =

a las 22:16:00 y pico)


General Date
Long Date
Medium Date
Short Date
yyyy-mm-dd
yy-mm-dd
Long Time
Medium Time
Short Time
hh :mm :ss
hh :mm

21/07/98 22:16:00
martes 21 de julio de 1998
21-jul-98
21/07/98
1998-05-21
98-07-21
22:19:53
10:20 PM
22:20
22 :21 :29
22 :21

Visual Basic 6.0

Carctersticas del Lenguaje Visual Basic


Comentarios
Cuando una frese va precedida de una comilla simple ( ' ), Visual Basic interpreta que esa frase es
un comentario y no ejecuta accin alguna sobre ella. Por ejemplo:
'Calculo de la velocidad media
suma = 0 ' Se inicializa la variable suma al valor 0

Constantes Numricas y de Caracteres


Una constante es un valor que no cambia durante la ejecucin de un programa. Visual Basic
admite nmeros y caracteres.

Variables
Una variable contiene un valor que puede modificarse a lo largo de la ejecucin de la aplicacin.
Cada variable tiene atributos propios como:
Nombre : Es el nombre que utilizamos para referirnos a la variable en la aplicacin.
Tipo : El tipo determina qu clase de valores puede almacenar ( numrico, carcter, fecha, etc)
Ambito : El mbito de una variable especifica en qu parte de la aplicacin la variable es
conocida y por lo tanto puede utilizarse.

Nombres de Variables
El nombre de una variable tiene que comenzar por una letra, puede tener hasta 255 caracteres de
longitud y debe ser nico dentro de su mbito.
Los caracteres pueden ser letras, dgitos y el carcter de su subrayado.
No se puede utilizar el punto ni otros caracteres que tienen un significado especial para Visual
Basic; por ejemplo, los parntesis.
Una palabra reservada tiene un significado especial para Visual Basic. Son palabras reservadas
las sentencias predefinidas (For), los nombres de las funciones(Val), mtodos o eventos (Click),
propiedades (Caption), tipos (Integer) y operadores and). El nombre de una variable no puede ser
una palabra reservada.

Visual Basic 6.0

Tipos de datos
Una variable puede ser de alguno de los tipos de datos siguientes:
Tipo

Descripcin

Rango

Integer

Entero
( 2 bytes )

-32768 a
32767

Long

Entero largo
(4 bytes)

-2147483648 a
2147483648

Single

Real simple
precisin (4bytes)

-3.40E+38 a
-3.40E+38

Double

Real Doble
precisin (4bytes)

-1.79D+308 a
1.79D+308

Currency

Nmerico con punto


Decimal fijo (8bytes)

-922337203685477.58 a
922337203685477.58

String

Cadena de caracteres
( 1 byte por carcter )

64K cars. en 16-bits


31
2 cars. en 32-bits

Byte

Carcter (1 byte)

0 a 255

Boolean

Boolean (2 bytes)

True o False

Date

Fecha/hora (8 bytes)

1/Enero/100 a 31/Dic/9999

Object

Referencia a un objeto

Cualquier referencia a un objeto

Variant

Con nmeros
16 bytes

Cualquier valor numrico


hasta el intervalo de
Un tipo Double

Antes de utilizar una variable, es un buen hbito declarar su tipo. Una forma de hacer esto es
utilizando la sentencia Dim ( o una de la palabras Public, Private o Static). Cualquier declaracin
de stas inicializa las variables numricas con el valor cero y las variables alfanumricas con el
carcter nulo. Por ejemplo:
Dim
Dim
Dim
Dim
Dim
Dim

I As Integer
R As Double
Nombre As String
Etiqueta As String * 10
F As Currency
L As Long, X AS Currency

Las sentencias anteriores declaran I como una variable entera, R como una variable real de
precisin doble, Nombre como una variable para contener una cadena de caracteres de longitud
variable, Etiqueta como una cadena de caracteres de longitud fija (10 caracteres), F como una
variable entera larga y X como una variable fraccionaria. Observe que en una sentencia Dim puede
realizar ms de una declaracin.
Cuando se declara una variable y no se especifica su tipo, se asume que es de tipo Variant. Por
ejemplo:

Visual Basic 6.0

Dim A, B As Integer
La sentencia anterior le puede inducir a pensar que A y B son de tipo entero, lo cual no es cierto; A
es de tipo Variant (por defecto) y B es de tipo Interger.
Si una variable se utiliza y se declara, se asume que es de tipo Variant. Por ejemplo:
L = "Dato:"
L = 3.2567
Suponiendo que L no ha sido declarada explcitamente, las sentencias anteriores declaran L como
una variable Variant que ha cambiado su tipo para comportarse como una cadena de caracteres, y
continuacin vuelve a cambiar su tipo para comportarse como una variable real de doble precisin.

Declaracin explcita
En Visual Basic no es necesario declarar una variable antes de utilizarla. Sin embargo, esta forma
de trabajar puede ser una fuente de errores. Por ejemplo:
Dim M As Integer, N As Integer
VarTEmp = M
' ...
N = VaTemp
En este ejemplo, VarTEmp no se ha declarado explcitamente. Esto no supone un Error, ya que
Visual Basic se encarga de crear dicha variable. Ahora observe que, por error, el nombre de esa
variable se ha escrito mal en la ltima sentencia. Cando Visual Basic encuentra un nuevo nombre
no puede determinar si es debido a un error o a la definicin de una nueva variable.
Para evitar este tipo de errores, podemos indicar a Visual Basic que genere un mensaje de error
siempre que encuentre una variable no declarada explcitamente. Para ello, escribiremos la
sentencia siguiente en la seccin de Declaraciones del formulario, del mdulo o de la clase:
Option Explicit
Esta sentencia opera slo en el formulario o en el mdulo donde se haya puesto. Para tener esa
opcin activa para todo el cdigo de una aplicacin, ejecute la orden Opciones del men
Herramientas, elija elija el dialogo Entorno (Edition v6.0) y Seleccione la opcin Declaracin de
Variables Requerida. Seleccionada esta opcion agrega la sentencia Option Explicit en
cualquier nuevo modulo que creemos.

Visual Basic 6.0

Ambito de las Variables

Se entiende por mbito de una variable el espacio de la aplicacin donde la variable es visible y
por lo tanto se puede utilizar. La figura siguiente indica los lugares donde se puede declarar una
variable.

Variables utilizadas por todos los mdulos


(declaracin Public en cualquier mdulo)
Modulo (formulario, mod. Estandar o clase)
Variables Utilizadas dentro del mdulo
(declaracin Dim o Private en el mdulo)

Procedimientos
Variables Locales
(Dim o Static)

Variables Locales
(Dim o Static)

Aplicacin

La tabla siguiente resume cmo debe declararse una variable en funcin del espacio donde
deseamos
Ambito

Declaracin

Local

Dim, Static, o ReDim (Dentro de un procedimiento)

Mdulo

Dim o Private (seccin de declaraciones del mdulo)

Global

Public (seccin de delclaraciones de un mdulo)

A nivel del mdulo, no hay diferencias entre Dim y private, pero se aconseja utilizar private en
contraste con Public
Recuerde que un formulario (.frm) incluye controles mas cdigo y que en mdulo (.bas) o una clase
(.cls) incluye solo cdigo.

Visual Basic 6.0

Variables locales
Una Variable Local se reconoce solamente en el procedimiento en el que est definida. Fuera de
ese procedimiento, la variable o es conocida. Su utilizacin ms comn es intervenir en clculos
intermedios.
Para declarar una variable local a un procedimiento, coloque la sentencia Dim correspondiente
dentro del mismo. Por ejemplo:
Private Sub Grados_C_KeyPress(KeyAscii As Integer)
Dim GradosFahr As Double
If (KeyAscii = 13) Then
GradosFahr = Val(Grados_C.Text) * 9 / 5 + 32
Grados_F.Text = Format$(GradosFahr)
End If
End Sub
Una variable local es reinicializada cada vez que se entra en el procedimiento. En otras palabras,
una variable local no conserva su valor entre una llamada al procedimiento y la siguiente. Para
hacer que esto suceda, hay que declarar la variable esttica. Visual Basic reinicializa una variable
esttica solamente la primera vez que se llama al procedimiento. Para declarar una variable
esttica, utilice la palabra Static, en lugar de Dim. Por Ejemplo:
Static var_ent As Integer
Para hacer que todas las variables de un procedimiento sean estticas, declare el procedimiento
esttico. Por ejemplo:
Public Static Sub Test()
'...
End Sub
Si una variable aparace en un procedimiento y no est explcitamente declarada, es por defecto
local. En cualquier caso, se aconseja declarar todas las variables explicitamente.

Variables Globales
Una variable global es una variable declarada a nivel del mdulo pero que puede ser accesida
desde cualquier otro modulo. Para hacer que una variable sea global o pblica, hay que declararla
Public en la seccin de declaraciones del modulo. Por Ejemplo:
Public var1_global As Double, var2_global As String
Cuando una variable Public, por Ejemplo Conta, se declara en un formulario, por ejemplo Form1,
para acceder a ella desde otro mdulo es necesario especificar su pertenencia; esto es, de qu
objeto es dato miembro dicha variable:
MsgBox Form1.Conta

'Visualiza el Valor de conta

No se pueden declarar varaibles globales en un procedimiento

Visual Basic 6.0

Variables con el mismo nombre


Una variable local y otra a nivel del mdulo pueden tener el mismo nombre, pero no son la misma
varaible. La regla para estos casis es que el procedimiento siempre pre utiliza la variable de nivel
ms cercano ( local, mdulo y global ). En otro caso, debe de calificar la variable. Por ejemplo:
Public Tem As Integer

'declaracin en Form1

Public Sub Test()


Dim Temp As Integer
Temp = 10
MsgBox Form1.Temp
End Sub

'procedimiento en Modulo1
'referencia a la variable local
'referencia a la variable global

Si varias variables pblicas comparten el mismo nombre en diferentes mdulos, para diferenciarlas
en el momento de referenciarlas es necesario especificar su pertenencia. Por ejemplo, si hay una
variable entera X declarada en los mdulos Form1 y Modulo1, nos podemos referir a ellas as:
MsgBox Form1.X
MsgBox Modulo1.X

'vizualiza el valor de la X en Form1


'visualiza el valor de la X de Modulo1

Es una buena prctica en programacin que los nombres de las variables sean diferentes entre s,
de los nombres de las propiedades y de los mdulos.

Constantes Simblicas
A menudo utilizamos valores contantes una y otra vez en el cdigo, o bien el cdigo depende de
ciertos nmeros dificiles de recordar. En estos casos, la mejor solucin es definir estos valores
como constantes simblicas y utilizar en lo suvesivo los nombres que identifican estas constantes.
Para definir una constante simblica, utilice la sigueinte sintanxis:
[Public | Private] Const constante [ As Tipo ] = expresion
Para nombrar una constante, se utilizan las mismas reglas que se aplican para crear variables. La
expresin puede ser numrica, alfanumrica o de tipo fehca y hora. Por ejemplo:
Public Const MAX_ELEMS = 99
Public Const VERSION = "ver. 4.05"
Const PI = 3.1415926, DOS_PI = 2 * PI
Const FECHA_POR_DEFECTO = #14/09/99#
Es una buena prctica definir todas las constantes globales en un nico mdulo.
El mbito de una constante se define por las mismas reglas que las variables.

Visual Basic 6.0

Utilizando el examinador de objetos (object browser) incluido en Visual Basic puede ver y utilizar,
sin necesidad de declarar, muchas de las constantes que usted pueda necesitar. Para ello pulse la
tecla F2 o ejecute la orden Examinador de Objetos del men Ver. La ventana que se visuliza se
muestra a continuacin:

Operadores
La tabla que se muestra a continuacin presenta el conjunto de operadores que soporta Visual
Basic colocados de mayor a menor prioridad ( entre ellos y entre categoras ). Los operadores que
aparecen sobre una misma lnea tienen igual prioridad. Las operaciones entre parntesis se
evalan primero, ejecutandose primero los parntesis ms internos.
Tipo

Operacin

Operador

Aritmtico

Exponenciacin
Cambio de Signo
Multiplicacin y divisin
Divisin Entera
Residuo de una Divisin Entera
Suma y Resta

^
*,/
\
Mod
+,-

Concatenacin

Concatenar o enlazar

&

Relacional

Igual, distinto, menor, mayor, ...

=,<>,<,>,<=,>=

Otros

Comparar dos expresiones de cars.


Comparar dos referencias a objetos

Like
Is

Lgico

Negacin
And
Or inclusiva
Or exclusiva
Equivalencia (Opuesto a Xor)
Implicacin
(falso si primer operando verdadero
y segundo operando falso)

Not
And
Or
Xor
Eqv
Imp

Visual Basic 6.0

Utilizacin del Tipo Variant


El tipo de dato Variant permite almacenar todos los tipos de datos definidos, como por ejemplo,
datos enteros, reales, cadenas de caracteres, o datos relativos a la fecha y a la hora, lo que lo
define como un tipo genrico. Cuando Visual Basic opera con datos de tipo Variant, ejecuta
automticamente las conversiones necesarias. No obstante, hay que tener en cuenta las siguientes
consideraciones:
Cuando se ejecutan operaciones aritmticas con variables de tipo Variant, su contenido tiene
que poder ser convertido a un valor numrico.
Cuando se ejecutan operaciones aritmticas sobre una variable Variant que contiene un Byte,
un Integer, un Long o un Single y el resultado exede del rango del tipo original, el tipo de la
variable pasa a ser el necesario para contener el resultado.
Como el operador + puede ser utilizado para sumar valores y concatenar cadenas de
caracteres, dependiendo del contenido de las variables, los resultados pueden ser
inesperados. Por ello, para concatenar variables de tipo Variant, y en general para evitar
ambigedades, utilizaremos el operador &, en lugar del operador +. El operador & ejecuta la
concatenacin sin tener en consideracin qu contiene las variables.
Si intenta ejecutar una operacin o funcin matemtica sobre una variable Variant que no contenga
un valor que pueda ser interpretado como un nmero, ocurrir un error. Para evitar eso, utilice la
funcin IsNumeric para interrogar si dicha variable contiene un valor que pueda ser utilizado como
un nmero. Por ejemplo:
Dim Dato
'Variant por defecto
Dato = "123A"
'cadena de caracteres "123A"
If IsNumeric(Dato) Then
Dato = Dato + 1111
Else
Dato = Dato & "5"
'cadena de caracteres "123A5"
End If
Cuando usted quiera conocer el tipo de dato que almacena una variable Variant, utilice la funcin
VarType. Por Ejemplo:
Sub TipoDato (Dato As Variant)
Dim tipo As Integer
Tipo = VarType(Dato)
Select Case Tipo
Case 0
MsgBox "Vaco"
Case 1
MsgBox "Null"
Case 2
MsgBox "Integer: " & dato
Case 3
MsgBox "Long: " & dato
Case 4
MsgBox "Single: " & dato
Case 5
MsgBox "Double: " & dato
Case 6
MsgBox "Currency: " & dato

Visual Basic 6.0

Case 7
MsgBox
Case 8
MsgBox
Case 11
MsgBox
Case 17
MsgBox
End Select

"Fecha/Hora: " & dato


"String: " & dato
"Boolean: " & dato
"Byte: " & dato

End Sub

Conversiones de Tipos de Datos


Visual Basic proporciona las funciones de conversin siguientes:
CBol(expresin)
CByte(expresin)
CCur(expresin)
CDate(expresin)
CDbl(expresin)
CInt(expresin)
CLng(expresin)
CSng(expresin)
CStr(expresin)
CVar(expresin)
CErr(expresin)

conversin a un valor tipo Boolean


conversin a un valor tipo Byte
conversin a un valor tipo Currency
conversin a un valor tipo Date
conversin a un valor tipo Double
conversin a un valor tipo Integer
conversin a un valor tipo Long
conversin a un valor tipo Single
conversin a un valor tipo String
conversin a un valor tipo Variant
conversin a un valor tipo Error

Las variables Variant tambin pueden contener calores de tipo Date y con ellas, puede ejecutar
operaciones aritmeticas y comparaciones. Por ejemplo:
Dim Dato

'Variant por defecto

Dato = Now 'Now Devuelve la Fecha y Hora Actual (dd/mm/aa hh:mm:ss)


Dato = Dato - 1
'menos 1 dia
If Dato > #24/10/95 3:00:00# Then
Dato = Dato - 1/24
'menos 1 hora
End If
Dato = Dato - (10/24/60) 'menos 10 minutos

Para verificar si un determinado valor puede sonsiderase comouno del tipo Date (fecha/hora),
utilice la funcin IsDate.
Para saber si una variable Variant ho ha sido incializada, es decir que contiene "" Vaco (Carcter)
o Cero (para los numericos), utilice la Funcin Empty(). Para saber si contiene un valor Null utilice
IsNull()

Visual Basic 6.0

El tipo String
Una variable de tipo String permite almacenar una cadena de caracteres y manipularla utilizando
las funciones proporcionadas por Visual Basic. Por Ejemplo:
Private Sub Command1_Click()
Dim Nombre As String
Nombre = Marvin Cardoza
Nombre = Left(Nombre,4)
End Sub
Despues de ejecutarse este procedimiento, el contenido de Nombre es Marv. La varaible Nombre
est definida como una cadena de caracteres de longitud variable. Para declarar Nombre como
una cadena de caracteres de longitud fija, por ejemplo, de 60 caraceres, proceda como se indica a
continuacin:
Dim Nombre As String * 60
Nombre = Marvin Cardoza
En el ejemplo anterior, si asignamos a Nombre menos de 60 caracteres, se completa con espacios
en blanco hasta 60 caracteres. Em estos casos pueden ser tiles las funciones Ltrim, Rtrim, Trim,
que devuelven la cadena de caracteres sin espacios a la izquierda, sin espacios a la derecha o sin
espacios a la izquierda y a la derecha, respectivamente.

Sentencias de Control
Las sentencias de control, denominadas tambin estructuras de control, permiten tomar decisiones
y realizar un procesos repetidas veces. Visual Basic dispone de las siguientes estructuras:
If ... Then ... Else
Select Case
Do ... Loop
For ... Next
For Each ... Next

If ... Then ... Else

If condicin Then sentencia(s) [Else sentencia(s)]


If condicin Then
sentencias(s)
[Else
sentencia(s) ]
End If
If KeyAscii = 13 then
GradosFahr
= Val(Grados_C.Text) * 9 / 5 + 32
Grados_F.Text = Format$(GradosFahr)
End If

Visual Basic 6.0

Para indicar que se quiere ejecutar uno de varios bloques de sentencias dependientes cada uno de
ellos de una condicin, la estructura adecuada es la siguiente:
If condicin Then
Sentencia-1
[ElseIf condicin Then
sentencias-2]...
[Else
sentencia-n ]
End If
Ejemplo:
If C >
Resu
ElseIf
Resu
ElseIf
Resu
Else
Resu
End If

100 Then
= C * P * 0.6
C >= 25 Then
= C * P * 0.8
C >= 10 Then
= C * P * 0.9
= C * P

Select Case
Esta sentencia permite ejecutar una de varias acciones en funcin del valor de una expresin. Es
una alternativa a If ... Then ... ElseIf cuando se compara la misma expresin con diferentes
valores.
Select Case expr-test
Case lista-1
[sentencias-1]
[ Case lista-2 ]] ...
[sentencias-2]
[ Case lista-n ]]
[sentencias-n]]

End Select
Select Case X
Case 1
Text.Text = 1
Case 2,3
Text.Text = 2 o 3
Case 4 To 9
Text.Text = 4 a 9
Case Else
Text.Text = X<1 o X>9
End Select

Visual Basic 6.0

Do ... Loop
Un Loop (bucle) repite la ejecucin de un conjunto de sentencias mientras una condicin dada sea
cierta, o hasta que una condicin dada sea cierta. La condicin puede ser verificada antes o
despus de ejecutarse el conjunto de sentencias.
Formato 1:
Do [ { While | Until } condicin ]
[sentencias]
[Exit Do]
[sentencias]
Loop

Formato 2:
Do
[sentencias]
[Exit Do]
[sentencias]
Loop [ { While | Until } condicin ]
Donde condicin es cualquier expresin que se evale a True o a False.
Esta sentencia nos permite realizar varias estructuras diferentes. Permite, como se aprecia en los
formatos, crear bucles con la condicin de terminacin al final o al principio del bloque de
sentencias. Por ejemplo;
Sub Form_Click()
Dim I As Integer, Suma As Integer
I = 1
Do While I <= 99
Hacer mientras I <= 99
Suma = Suma + I
I = I + 2
Loop
End Suma
En este ejemplo indica que cuando hagamos clic sobre el formulario se visualizar sobre el mismo
la suma de los nmeros impares entre 1 y 99. El mismo resultado se obtiene con el ejemplo que se
presenta a continuacin:
Sub Form_Click()
Dim I As Integer, Suma As Integer
I = 1
Do
Hacer hasta que I < 1
Suma = Suma + I
I = I - 2
Loop Until i < 1
End Suma
La sentencia Exit Do permite salir de un bucle Do ... Loop antes de que finalice ste.

Visual Basic 6.0

For ... Next


La sentencia For da lugara un lazo o bucle, y permite ejecutar un conjunto de sentencias cierto
nmero de veces.

For variable = expresin 1 To expresin 2 [Step expresin 3]


[sentencias]
[Exit For]
[sentencias]
Next [variable[,variable]...]
La sentencia Exit For permite salir de un bucle For ... Next antes de que ste finalice.
Ejemplo:
Sub Form_Click()
Dim I As Integer, Suma As Integer
For I = 1 To 99 Step 2
Para I=1,3,5.... hasta 99
Suma = Suma + 1
Next I
End Sub

Este ejemplo indica que cuando hagamos clic sobre el formulario se visualizar sobre el mismo la
suma de los nmeros impares entre 1 y 99.
Si el valor de la expresin 3 es negativo, se comprueba si la variable es menor que la expresin 2,
encuyo caso se pasa a ejecutar la siguiente sentencia Next. En otro caso, se ejecuta el bucle y se
decrementa la variable. Este proceso se repite hasta que la variable sea menor que la expresin 2.
Por ejemplo:
Sub Form_Click()
Dim I As Integer, Suma As Integer
For I = 99 To 1 Step -2
Para I=99,97.... hasta 1
Suma = Suma + 1
Next I
End Sub

Visual Basic 6.0

For Each ... Next


La sentencia For Each ... Next es similar a la sentencia For, con la diferencia de que ahora se
repite un grupo de sentencias por cada elemento de una coleccin de objetos o de un array. Esto
es especialmente util cuando no conocemos cuntos elementos hay en la coleccin o en el array.
Su sintaxis es la siguiente:
For Each elemento In grupo
[sentencias]
[Exit For]
[sentencias]
Next elemento
Donde elemento es una variable de tipo Variant que representa a cada uno de los elementos de la
coleccin o del array representado por grupo. Por ejemplo, el procedimiento que se muestra suma
los elementos de un array pasado como argumento:
Sub Form_Click()
Dim X, Suma
For Each X In Array
Suma = Suma + X
Next I
MsgBox Suma
End Sub
La sentencia For de este ejemplo indica que por cada valor X en el array ArrayX se ejecute la
sentencia:
Suma = Suma + X

Arrays

Un array permite referirse a una serie de elementos del mismo tipo por un mismo nombre y
referenciar un nico elemento de la serie utilizando un ndice.
Visual Basic, permite definir arrays de variables de una o ms dimensiones y de cualquier tipo de
datos (tipos fundamentales y tipos definidos por el usuario), e introduce una nueva clase de arrays,
arrays de controles, necesarios para escribir mens, para crear nuevos controles en tiempo de
ejecucin o para hacer que una serie de controles tengan asociado un mismo procedimiento para
cada tipo de suceso.

Arrays de variables
Los arrays discutidos en este apartado permiten referirse a una serie de variables por un mismo
nombre y acceder individualmente a cada una de ellas utilizando un ndice (variables
subindicadas). Este tipo de arrays tiene que declarse en el cdigo y pueden tener una o ms
dimensiones.

Visual Basic 6.0

Arrays estticos
Para declarar un array esttico (array con un nmero fijo de elementos), Visual Basic hace tres
consideraciones importantes:
Para declarar un array global, hgalo en la seccin de declaraciones de un mdulo utilizando la
sentencia Public.
Para declarar un array a nivel de un mdulo, hgalo en la seccin de declaraciones del modulo
utilizando la sentencia Private o Dim.
Para declarar un array local a un procedimiento, utilice la sentencia Dim o Static dentro del
propio procedimiento.
Un array tiene que ser declarado explcitamente, y los ndices del mismo deben estar en el rango
31
31
-2 a 2 . A continuacin se muestran algunos ejemplos:
Dim Array_A(19) As String
Dim ArrayB(5,7) As Integer

'Arreglo de 19 posiciones tipo carcter


'Declara un arreglo de 5 columnas y 7 filas

Arrays Dinmicos
Cuando las dimensiones de un array no son siempre las mismas, la mejor forma de especificarlas
es mediante variables. Un array declarado de esta forma es un array dinmico. El espacio
necesario para un array esttico se asigna al iniciarse el programa y permanecer fijo. El espacio
para un array dinmico ser asignado durante la ejecucin del programa. Un array dinmico,
puede ser redimensionado en cualquier momento durante la ejecucin.
Para crear un array dinmico:
Declare el array en la seccin de declaraciones de un modulo con una sentencia Public si lo
quiere global o con Private o Dim si lo quiere a nivel del modulo, o en un procedimiento con
Static o Dim si lo quiere local. Para especificar que el array va a ser dinamico deje la lista de
dimensiones vaca. Por ejemplo:
Dim Array_A()
Asine el nmero actual de elementos con la sentencia ReDim:
ReDim Array_A( N + 1 )

Procedimientos y Funciones
En Visual Basic, el cdigo es almacenado en mdulos, que pueden estar en un formulario,
mdulos estndar y clases. Cada mdulo puede contener:
Declaraciones (variables, constantes...)
Procedimientos conducidos por eventos
Procemientos y funciones estndar
Procedimientos Property
Un procedimiento conducido por eventos es el cdigo que es invocado cuando un objeto reconoce
que ha ocurrido un determinado suceso o evento ( Por ejemplo el click ).

Visual Basic 6.0

Cuando varios procedimientos conducidos por eventos necesitan ejecutar un mismo proceso, la
mejor forma de proceder es colocar el cdigo comn en un Procedimiento Estndar, perteneciente
a un mdulo estandar, que ser invocado desde cada procedimiento conducido por un suceso que
necesite ejecutar dicho cdigo. De esta forma se elimina la necesidad de duplicar cdigo. Un
procedimiento estndar es invocado cuando se hace una llamada explcita al mismo.
Un procedimiento estndar puede escribirse como procedimiento Sub o como funcin Function.
Un procedimiento Property permite crear propiedades para una clase y manipularlas. Los mdulos
de clase son la base de la programacin orientada a objetos en Visual Basic. Los objetos de estas
clases pueden incluir sus propias propiedades y mtodos, pero no sus propios eventos. Tanto las
clases como los procedimientos Property sern estudiados en otro capitulo dedicado a objetos de
clases.
Funciones (Function)
Una funcin est diseada para retornar un valor determindado.
Sintaxis:
Function nombre [ ( parametros) ] [ As tipo ]
[sentencias]
[nombre = expresin]
[ Exit Function ]
End Function
nombre :

es el nombre de la funcin; su tipo determiona el tipo de datos que devuelve la


funcin. Para especificar el tipo, la clausula As tipo ( Integer, Long, Single,
Double, Currency, String, Variant, etc.)

parametros

son una lista de variables, que se corresponden con los argumentos que son
pasados cuando es invocada la funcin.

expresin

define el valor devuelto por la funcin. Este valor es almacenado en el propio


nombre de la funcin, que actua como variable dentro del cuerpo de la misma.
Si no se efectua esta asignacin, el resultado devuelto ser ) si sta es nmerica,
nulo ("") si la funcin es de caracteres, o vaco si la funcin es Variant.

Exit Function permite salir de una funcin. Exit Function no es necesaria a no ser que se
necesite retornar a la sentencia inmediamente a contiuacin de la que efectu
la llamada antes de que la funcin finalice.
End Function

Fin de la funcin

La llamada a una funcin es de la forma:


variable = nombre [(argumentos)]

Visual Basic 6.0

El siguiente ejemplo muestra una funcin que realiza una suma de dos numeros Enteros y
devuelve el resultado de la suma:
Function f_Suma ( p_valor1 As Integer, p_valor2 As Integer) As Long
Dim v_resultado As Long
v_resultado = p_valor1 + p_valor2
f_Suma = v_resultado
End Function
La llamada a esta funcin se har de la forma siguiente:
v_valor = f_Suma(10, 20)

Procedimientos (Sub)
Un procedimiento funciona casi igual que una funcin la direfencia radica en que los
procedimientos no retornan ningun valor.
La sintaxis que define un procedimiento es la siguiente:
Sub nombre [(parametros)]
[sentencias]
[Exit Sub]
[sentencias]
End Sub
Llamada a un procedimiento:
nombre [(argumentos)]

Visual Basic 6.0

Convenciones de Codificacin de Visual Basic

Prefijos Sugeridos para controles:


Tipo de Control

Prefijo

Ejemplo

Formulario
Etiqueda
Cuadro de Texto
Marco (frame)
Botn de Comando
Casilla de Verificacin
Grupo de Opciones
Cuadro Combinado
Cuadro de Lista
Control Numerico (timer)
Control de Datos

frm
lbl
txt
fra
cmd
chk
opt
cbo
lst
tmr
dat

frmRegiones
lblMsjAyuda
txtApellidos
fraLenguaje
cmdSalir
chkSoloLectura
optSexo
cboRegiones
lstDeptos
tmrAlarma
datEmpleados

S-ar putea să vă placă și