Você está na página 1de 13

*Funciones y palabras reservadas de Visual Basic*

Visual Basic tiene un conjunto de funciones que podremos usar. A continuacin veremos las ms representativas, si
bien hay muchas ms. Se aconseja ir a la ayuda para ampliar o profundizar sobre la cuestin

Palabras reservadas.
Rem: Nos permite incluir comentarios sobre el programa en medio del cdigo, la sintaxis es:

Rem Comentario

Adems, se puede conseguir lo mismo sin necesidad de escribir Rem, utilizando la comilla simple, es decir, la anterior
orden es equivalente a:

'Comentario

Observaremos como el editor de cdigo reconoce los comentarios ya que les aplica como color del texto el verde.

Exit Sub: Nos permite acabar la ejecucin del procedimiento en el que lo pongamos, y en punto del mismo donde se
halle situado.

End: Nos permite acabar la ejecucin del programa en el punto del mismo donde se halle situado.

Funciones.
MsgBox: Muestra un mensaje en un cuadro de dilogo, espera a que el usuario haga clic en un botn y devuelve un
tipo Integer correspondiente al botn elegido por el usuario.

Sintaxis

MsgBox(prompt[, buttons][, title][, helpfile, context])

La sintaxis de la funcin MsgBox consta de estos argumentos:

Parte Descripcin
prompt Requerido. Cadena que representa el prompt en el cuadro de dilogo. La longitud mxima de prompt
es de aproximadamente 1024 caracteres, segn el ancho de los caracteres utilizados.
buttons Opcional. Expresin numrica que corresponde a la suma de los valores que especifican el nmero y el
tipo de los botones que se pretenden mostrar, el estilo de icono que se va a utilizar, la identidad del
botn predeterminado y la modalidad del cuadro de mensajes. Si se omite este argumento, el valor
predeterminado para buttons es 0.
title Opcional. Expresin de cadena que se muestra en la barra de ttulo del cuadro de dilogo. Si se omite
title, en la barra de ttulo se coloca el nombre de la aplicacin.
helpfile Opcional. Expresin de cadena que identifica el archivo de Ayuda que se utiliza para proporcionar
ayuda interactiva en el cuadro de dilogo. Si se especifica helpfile, tambin se debe especificar
context.
context Opcional. Expresin numrica que es igual al nmero de contexto de Ayuda asignado por el autor al
tema de Ayuda correspondiente. Si se especifica context, tambin se debe especificar helpfile.

Valores

El argumento buttons tiene estos valores:


Constante Valor Descripcin
VbOKOnly 0 Muestra solamente el botn Aceptar.
VbOKCancel 1 Muestra los botones Aceptar y Cancelar.
VbAbortRetryIgnore 2 Muestra los botones Anular, Reintentar e Ignorar.
VbYesNoCancel 3 Muestra los botones S, No y Cancelar.
VbYesNo 4 Muestra los botones S y No.
VbRetryCancel 5 Muestra los botones Reintentar y Cancelar.
VbCritical 16 Muestra el icono de mensaje crtico.
VbQuestion 32 Muestra el icono de pregunta de advertencia.
VbExclamation 48 Muestra el icono de mensaje de advertencia.
VbInformation 64 Muestra el icono de mensaje de informacin.
VbDefaultButton1 0 El primer botn es el predeterminado.
VbDefaultButton2 256 El segundo botn es el predeterminado.
VbDefaultButton3 512 El tercer botn es el predeterminado.
VbDefaultButton4 768 El cuarto botn es el predeterminado.
VbApplicationModal 0 Aplicacin modal; el usuario debe responder al cuadro de mensajes
antes de poder seguir trabajando en la aplicacin actual.
VbSystemModal 4096 Sistema modal; se suspenden todas las aplicaciones hasta que el
usuario responda al cuadro de mensajes.
VbMsgBoxHelpButton 16384 Agrega el botn Ayuda al cuadro de mensaje.
VbMsgBoxSetForeground 65536 Especifica la ventana del cuadro de mensaje como la ventana de primer
plano.
VbMsgBoxRight 524288 El texto se alinea a la derecha.
VbMsgBoxRtlReading 1048576 Especifica que el texto debe aparecer para ser ledo de derecha a
izquierda en sistemas hebreo y rabe.

El primer grupo de valores (0 a 5) describe el nmero y el tipo de los botones mostrados en el cuadro de dilogo; el
segundo grupo (16, 32, 48, 64) describe el estilo del icono, el tercer grupo (0, 256, 512) determina el botn
predeterminado y el cuarto grupo (0, 4096) determina la modalidad del cuadro de mensajes. Cuando se suman nmeros
para obtener el valor final del argumento buttons, se utiliza solamente un nmero de cada grupo.

Nota: Estas constantes las especifica Visual Basic para Aplicaciones. Por tanto, el nombre de las mismas puede
utilizarse en cualquier lugar del cdigo en vez de sus valores reales.

Valores devueltos

Constante Valor Descripcin


vbOK 1 Aceptar
vbCancel 2 Cancelar
vbAbort 3 Anular
vbRetry 4 Reintentar
vbIgnore 5 Ignorar
vbYes 6 S
vbNo 7 No

Comentarios
Cuando se proporcionan tanto helpfile como context, el usuario puede presionar F1 para ver el tema de Ayuda
correspondiente al context. Algunas aplicaciones como por ejemplo Microsoft Excel, tambin agregan automticamente
un botn Ayuda al cuadro de dilogo.

Si el cuadro de dilogo cuenta con un botn Cancelar, presionar la tecla ESC tendr el mismo efecto que hacer clic en
este botn. Si el cuadro de dilogo contiene un botn Ayuda, se suministra ayuda interactiva para ese cuadro de
dilogo. Sin embargo, no se devuelve valor alguno hasta que se hace clic en uno de estos botones.

Nota: Si se desea especificar ms que el primer argumento con nombre, se debe utilizar MsgBox en una expresin. Si
deseamos omitir algn argumento de posicin, debemos incluir el delimitador de coma correspondiente.

Ejemplo.
La siguiente orden genera un cuadro al cual le indicamos ttulo, texto, le ponemos tres botones: S, No y Cancelar.
Adems le incluimos el icono de pregunta:

MsgBox "Esta seguro de que quiere continuar?", vbYesNoCancel + vbQuestion, "Confirmacin"

El resultado en ejecucin es:

InputBox: Muestra un mensaje en un cuadro de dilogo, espera que el usuario escriba un texto o haga clic en un botn
y devuelve un tipo String con el contenido del cuadro de texto.

Sintaxis

InputBox(prompt[, title][, default][, xpos][, ypos][, helpfile, context])

La sintaxis de la funcin InputBox consta de estos argumentos:

Parte Descripcin
prompt Requerido. Cadena que se muestra como mensaje en el cuadro de dilogo. La longitud mxima de
prompt es de aproximadamente 1024 caracteres, segn el ancho de los caracteres utilizados.
title Opcional. Expresin de cadena que se muestra en la barra de ttulo del cuadro de dilogo. Si omite
title, en la barra de ttulo se coloca el nombre de la aplicacin.
default Opcional. Expresin de cadena que se muestra en el cuadro de texto como respuesta
predeterminada cuando no se suministra una cadena. Si omite default, se muestra el cuadro de texto
vaco.
xpos Opcional. Expresin numrica que especifica, en twips, la distancia en sentido horizontal entre el
borde izquierdo del cuadro de dilogo y el borde izquierdo de la pantalla. Si se omite xpos, el cuadro
de dilogo se centra horizontalmente.
ypos Opcional. Expresin numrica que especifica, en twips, la distancia en sentido vertical entre el borde
superior del cuadro de dilogo y el borde superior de la pantalla. Si se omite ypos, el cuadro de
dilogo se coloca a aproximadamente un tercio de la altura de la pantalla, desde el borde superior de
la misma.
helpfile Opcional. Expresin de cadena que identifica el archivo de Ayuda que se utilizar para proporcionar
ayuda interactiva para el cuadro de dilogo. Si se especifica helpfile, tambin deber especificarse
context.
context Opcional. Expresin numrica que es el nmero de contexto de Ayuda asignado por el autor al tema
de Ayuda correspondiente. Si se especifica context, tambin deber especificarse helpfile.

Comentarios

Cuando se especifica tanto helpfile como context, el usuario puede presionar F1 para ver el tema de Ayuda
correspondiente a context. Algunas aplicaciones como por ejemplo, Microsoft Excel, tambin agregan
automticamente un botn Ayuda al cuadro de dilogo. Si el usuario hace clic en Aceptar o presiona Entrar , la
funcin InputBox devuelve lo que haya en el cuadro de texto. Si el usuario hace clic en Cancelar, la funcin devuelve
una cadena de caracteres de longitud cero ("").

Nota: Si deseamos especificar ms que el primer argumento con nombre, debemos utilizar InputBox en una expresin.
Si deseamos omitir algunos argumentos de posicin, debemos incluir el delimitador de coma correspondiente.

Ejemplo.
La siguiente orden genera un cuadro al cual le indicamos texto, ttulo y asignamos el texto que escriba el usuario a la
variable cadena:

Dim cadena As String


cadena = InputBox("Introduzca el nombre del usuario", "Identificacin")

Observar que como asignamos el resultado de la funcin InputBox a una variable, debemos encerrar los argumentos
entre parntesis.

El resultado en ejecucin es:

Explicacin de la funcin InputBox.

Format: Visual Basic proporciona una gran flexibilidad a la hora de presentar formatos de nmeros, as como de fechas
y horas. Puede presentar con facilidad formatos internacionales de nmeros, fechas y horas.

La funcin Format convierte un valor numrico en una cadena de texto y le proporciona control sobre la apariencia de
la cadena. Por ejemplo, podemos especificar el nmero de decimales, los ceros a la izquierda o a la derecha y los
formatos de moneda. La sintaxis es:

Format(expresin[, patrn o mscara])


es una cadena
El argumento expresin especifica el nmero que se va a convertir y el argumento patrn o mscara
compuesta por smbolos que determinan el formato del nmero. En la tabla siguiente se enumeran
los smbolos ms comnmente utilizados.

Smbolo Descripcin
0 Marcador de posicin de dgito; imprime un cero a la izquierda o a la derecha en esa
posicin, si corresponde.
# Marcador de posicin de dgito; nunca imprime ceros a la izquierda ni a la derecha.
. Marcador de posicin decimal.
, Separador de millares.
- + $ ( ) espacio Carcter literal; los caracteres se presentan exactamente como estn escritos en la cadena
de formato.

Ejemplo: Format(32675,"##,##0.00") mostrara en pantalla: 32.675,00

Formatos con nombre


Visual Basic proporciona varios formatos estndar para su uso con la funcin Format. En lugar de especificar smbolos
en el argumento formato, puede especificar dichos formatos mediante un nombre en el argumento formato de la funcin
Format. El nombre del formato tiene que ir siempre entre comillas dobles ("").

En la tabla siguiente se enumeran los nombres de formato que puede usar.

Nombre de formato Descripcin


General Number Muestra los nmeros sin separador de millares.
Currency Muestra los nmeros con separador de millares, si procede; muestra dos dgitos a la
derecha del separador decimal. El resultado se basa en los valores del sistema del usuario.
Fixed Muestra al menos un dgito a la izquierda y dos dgitos a la derecha del separador decimal.
Standard Muestra los nmeros con separador de millares, al menos un dgito a la izquierda y dos
dgitos a la derecha.
Percent Multiplica el valor por 100 con un signo de porcentaje al final.
Scientific Utiliza la notacin cientfica estndar.
General Date Muestra la fecha y la hora si expresin contiene ambas. Si expresin slo es una fecha o
una hora, no presenta la informacin que falta. La presentacin de la fecha est
determinada por los valores del sistema del usuario.
Long Date Utiliza el formato Fecha larga especificado por los valores del sistema del usuario.
Medium Date Utiliza el formato dd-mmm-aa (por ejemplo, 03-Abr-93). La presentacin de la fecha est
determinada por los valores del sistema del usuario.
Short Date Utiliza el formato Fecha corta especificado por los valores del sistema del usuario.
Long Time Muestra la hora segn el formato de hora larga del sistema del usuario; incluye horas,
minutos y segundos.
Medium Time Muestra la hora, los minutos y "AM" o "PM" con el formato "hh:mm AM/PM".
Short Time Muestra la hora y los minutos con el formato hh:mm.
Yes/No Cualquier valor numrico distinto de cero (normalmente -1) es Yes. Cero es No.
True/False Cualquier valor numrico distinto de cero (normalmente -1) es True. Cero es False.
On/Off Cualquier valor numrico distinto de cero (normalmente -1) es On. Cero es Off.

Imprimir fechas y horas con formato


Para imprimir fechas y horas con formato, utilizaremos la funcin Format con smbolos que representen fechas y horas.
En los ejemplos siguientes se utilizan las funciones Now y Format para identificar y dar formato a la fecha y
hora actuales.

Sintaxis de Format Resultado


Format(Now, "d/m/aa") 1/12/01
Format(Now, "dddd, dd mmmm, aaaa") sbado, 01 diciembre, 2001
Format(Now, "d-mmm") 1-dic
Format(Now, "mmmm-aa") diciembre-01
Format(Now, "hh:mm AM/PM") 07:18 AM
Format(Now, "h:mm:ss a/p") 7:18:00 a
Format(Now, "d-mmmm h:mm") 1-diciembre 7:18

Int: Devuelve la parte entera de un nmero: Int(Nmero).

Len: Devuelve la longitud de una cadena: Len(Cadena).

Rnd: Devuelve un nmero aleatorio entre 0 y 1.

Val: Devuelve el valor numrico de una cadena alfanumrica, solo convierte hasta que encuentra el primer carcter que
no es un nmero: Val(Cadena).

An hay muchas ms funciones, cuando las necesitemos, ya las estudiaremos.

Propiedades comunes.
A continuacin veremos algunas propiedades comunes a la mayora de los controles, estas se podrn modificar desde
la vista formulario, con el control activado y en la ventana de propiedades:

Nombre: Nombre que deseemos asignar al objeto, es un identificador interno para el cdigo.

Caption: Habitualmente igual que el nombre del objeto, pero es la forma de identificar el objeto de cara al usuario, por
ejemplo, si tenemos un botn en nuestro formulario que al pulsarlo nos acabe la ejecucin, internamente le llamaremos
BotonSalir, pero basta con que le pongamos como Caption Salir, que es lo que ver el usuario.

Enabled: Slo admite dos valores: True o False, e indica si el control est o no activado.

Visible: Slo admite dos valores: True o False, e indica si el control est o no visible.

Ejemplo.
Crear un EXE estandar, llamar Ejemplo2 al formulario, al cual le insertaremos un botn en la parte inferior derecha,
ponerle como nombre BotonSalir y como Caption Salir ( si queremos que el usuario pueda activar el botn con la
combinacin de teclas ALT + S, deberemos anteponer a la letra S del caption el smbolo &).

A este botn le insertaremos cdigo de forma que cuando el usuario pulse, salga un cuadro por pantalla pidiendo
confirmacin para salir del programa, si el usuario pulsa S, debe acabar la ejecucin y si pulsa No, no debe hacer
nada.

Insertar otro botn en la parte inferior izquierda, ponerle como nombre BotonFecha y como Caption Fecha y hora del
sistema ( si queremos que el usuario pueda activar el botn con la combinacin de teclas ALT + F, deberemos
anteponer a la letra F del caption el smbolo &)
A este botn le insertaremos cdigo de forma que cuando el usuario pulse, imprima en el formulario la fecha en formato
largo, es decir, da de la semana, da, nombre del mes y ao con 4 cifras. Debajo debe imprimir la hora del sistema. El
formulario en diseo quedar:

Y la ventana de cdigo:

Observar que para continuar una lnea de cdigo en la siguiente, se utiliza despus de un espacio el guin bajo.
*VISUAL BASIC ACCESS*
El lenguaje Basic permite:

Personalizar una aplicacin creando tus propias funciones


Tratamiento de errores runtime
Crear o manipular objetos
Realizar acciones a nivel de sistema
Manejar registros concretos, uno a uno
Pasar argumentos que convengan en el momento de la ejecucin

Las macros no permiten la mayora de estas cosas, y la mayora de las acciones de macros se pueden ejecutar
desde cdigo con el objeto (antes instruccin) DoCmd. Las macros son interesantes para crear prototipos de la
aplicacin con rapidez o hacer acciones sencillas que no entraen error; tambin hay algunas cosas que solo se
pueden hacer con macros (segn versiones).

MODULOS
El cdigo Visual se almacena en los mdulos de una base de datos de Access, en un fichero.mdb (en Visual
Basic en algo ms amplio que llamamos proyecto y que no tiene porque contener una base de datos).
Conviene no confundir la Base de datos con el cdigo o aplicacin que lo maneja aunque est contenida en el
mismo fichero.

Cada modulo contiene una Seccin de Declaraciones y a continuacin una serie de procedimientos.
La Seccin de declaraciones contiene la Instruccin Option Compare Database y puede contener otras como
Option Explicit, Option Base, declaraciones de variables, etc... que afectan al mdulo donde se encuentren estas
declaraciones.

Cada instruccin ocupa solo una lnea aunque una lnea puede contener varias siempre que estn separadas
por dos puntos (: ).

Hay dos tipos de mdulos:

Mdulos de formulario o informe llamados LOCALES. Son privados de ese objeto y se crean y borran con
l ya que forman parte de su diseo; se les puede aadir procedimientos de evento o generales.

Mdulos GLOBALES. Son objetos independientes y sus procedimientos pueden ser llamados desde
cualquier sitio (expresiones, procedimientos, macros, etc. estn en ese u otro mdulo, sea local o global).

Los procedimientos de evento no tienen sentido aqu.

Para entrar en un modulo local basta seleccionar el objeto (formulario o informe) y pulsar la opcin Cdigo
del men Ver (tambin con el botn cdigo de la barra de herramientas o de iconos; otra de las formas es
Generar evento en el men de mtodo abreviado (el que se obtiene pulsando el botn derecho del ratn) para
ese objeto o para cualquiera de los controles contenidos en l.

PROCEDIMIENTOS
Hay dos tipos de procedimientos:

[PRIVATE][PUBLIC] SUB nombre_procedimiento [(argumentos)]


END SUB
No devuelven valor por lo que no se pueden usar en expresiones
Aceptan argumentos o parmetros
Todos los procedimientos de evento son de ste tipo y se encuentran siempre en mdulos locales.
[PRIVATE][PUBLIC] FUNCTION nombre_procedimiento [(argumentos)] [As tipo]
END FUNCTION
Devuelven siempre un valor por lo que se pueden usar en expresiones
Aceptan argumentos o parmetros
Los procedimientos son tiles:
Cuando determinadas operaciones siempre se vayan a hacer de una determinada forma aunque est
parametrizada.

Si hay que modificar esa operacin solo ser necesario modificarla en un solo sitio.
Las operaciones pueden ser complejas (se podrn utilizar estructuras de control, variables, etc.
Se pueden controlar y recuperar los errores de ejecucin (errores runtime)
Se pueden incluir comentarios en el cdigo para documentarlo, aclararlo.

Los procedimientos de un mdulo local son privados (por eso puede haberlos con el mismo nombre en otro
mdulo local, nunca en el mismo) a no ser que se declaren pblicos (PUBLIC) mientras que los procedimientos de un
mdulo global son pblicos (y no puede haber otro procedimiento que se llame igual), a no ser que se declaren en l como
privados (PRIVATE).

Los procedimientos privados solo pueden ser llamados desde el correspondiente mdulo, mientras que los
pblicos pueden ser llamados desde cualquier mdulo.

Si hubiera dos procedimientos con el mismo nombre en dos mdulos distintos, Access primero lo buscara en
el modulo activo (local o global) y si no lo encontrara lo buscara en los mdulos globales (o en el resto de los
mdulos globales).

NOMBRES EN BASIC ACCESS


Deben comenzar con una letra
Solo pueden contener letras, nmeros y el signo de subrayado
Longitud mxima: 40 caracteres
No deben contener palabras reservadas (nombres de instrucciones, mtodos, funciones de librera,
operadores)

VARIABLES
Almacena valores fuera de las tablas. Tiene nombre y tipo y en algn caso se les puede asignar longitud
predeterminada.

Declaracin: Visual Access no obliga a declarar las variables sino que al usarlas simplemente Visual Access
las creara (declaracin implcita), pero con un tipo de datos (variant) que puede no ser conveniente.

CONVIENE DECLARAR las variables explcitamente para detectar errores de ejecucin y para documentar
el cdigo.

Las variables se pueden clasificar de varias maneras:

LOCALES O GLOBALES(por su visibilidad), DINAMICAS O ESTATICAS (vida)


DIM nombre_variable [AS tipo] [, nombre_variable [AS tipo]...]

Las variables declaradas con DIM sern locales y dinmicas, es decir que son visibles en el procedimiento
donde se crearon y desaparecen al finalizar el procedimiento donde se crearon (distinto es que se puedan pasar
como parmetros a otros procedimientos).

STATIC nombre_variable [AS tipo] [, nombre_variable [AS tipo]...]

Las variables declaradas con STATIC sern locales y estticas, es decir que son visibles en el procedimiento
donde se crearon pero NO desaparecen al finalizar el procedimiento donde se crearon, por lo que conservaran
el valor que tenan en la ocasin anterior.

PUBLIC nombre_variable [AS tipo] [, nombre_variable [AS tipo]...]

Las variables declaradas como PUBLIC (antes GLOBAL) permitir que una variable pueda ser visible desde
cualquier procedimiento y no desaparezca hasta que finalice el programa.

NOTA: Todas estas ordenes permiten tambin crear matrices, determinar el tamao (segn casos) y clusulas
relacionadas con la programacin con objetos).

ESTRUCTURAS DE CONTROL DE FLUJO DE PROGRAMA


Estructuras condicionales.
If... End If

Ejecuta condicionalmente un grupo de instrucciones, dependiendo del valor de una expresin.


Sintaxis
If condicin Then
[instrucciones]
[ElseIf condicinn Then
[instrucciones_elseif] ...
[Else
[instrucciones_else]]
End If
Select Case... End Select

Ejecuta uno de varios grupos de instrucciones, dependiendo del valor de una expresin.
Sintaxis
Select Case expresin_prueba
[Case lista_expresionn
[instruccionesn]] ...
[Case Else
[instrucciones_else]]
End Select
** Se puede poner: Case 2 To 5 (como rango)
** O incluso una lista: Case 5,6,8,12,4
Estructuras de repeticin o bucles.
Do...Loop

Repite un bloque de instrucciones cuando una condicin es True o hasta que una condicin se convierta en
True.
Sintaxis
Do [{While | Until} condicin]
[instrucciones]
[Exit Do]
[instrucciones]
Loop

O bien, puede utilizar esta sintaxis:


Do
[instrucciones]
[Exit Do]
[instrucciones]
Loop [{While | Until} condicin]
For...Next
Repite un grupo de instrucciones un nmero especificado de veces.
Sintaxis
For contador = principio To fin [Step incremento]
[instrucciones]
[Exit For]
[instrucciones]
Next [contador]

ESQUEMA DE UNA APLICACIN: Ejemplo...

TABLA DE TIPOS DE VARIABLES:


Tipo de datos Tamao de almacenamiento Intervalo
Byte 1 byte 0 a 255
Boolean 2 bytes True o False
Integer 2 bytes 32.768 a 32.767
Long (entero largo) 4 bytes 2.147.483.648 a 2.147.483.647
Single (coma flotante/ precisin simple) 4 bytes 3,402823E38 a 1,401298E45 para valores negativos; 1,401298E45
a 3,402823E38 para valores positivos
Double (coma flotante/ precisin doble) 8 bytes 1,79769313486232E308 a 4,94065645841247E324 para valores
negativos; 4,94065645841247E324 a 1,79769313486232E308 para valores positivos
Currency (entero a escala) 8 bytes 922.337.203.685.477,5808 a 922.337.203.685.477,5807
Decimal 14 bytes +/9.228.162.514.264.337.593.543.950 sin punto decimal; +/7,9228162514264337593543950335 con
28 posiciones a la derecha del signo decimal; el nmero ms pequeo distinto de cero es +/
0,0000000000000000000000000001
Date 8 bytes 1 de enero de 100 a 31 de diciembre de 9999
Object 4 bytes Cualquier referencia a tipo Object
String (longitud variable) 10 bytes + longitud Desde 0 a 2.000 millones de la cadena
String (longitud fija) Longitud de la cadena Desde 1 a 65.400 aproximadamente
Variant (con nmeros) 16 bytes Cualquier valor numrico hasta el intervalo de un tipo Double
Variant (con caracteres) 22 bytes + longitud El mismo intervalo que para un tipo String de longitud variable de cadena
Definido por el usuario (utilizando Type) Nmero requerido por los elementos. El intervalo de cada elemento es
el mismo que el intervalo de su tipo de datos.
Sentencias de Control de Visual Basic

Tipos de sentencias de control

Las sentencias de control, denominadas tambin estructuras de control, permiten tomar decisiones y
realizar un proceso repetidas veces. Visual Basic dispone de las siguientes estructuras:

- If...Then
- If...Then...Else
- Select case
- For... Next
- While...Wend
- Do...loop
- Goto

Sentencia If

Permite tomar una decisin referente al camino a seguir o accin a ejecutar en un proceso basndose en el
resultado (verdadero o falso) de una condicin. Su sintaxis es: If condicin then accin1 [else accin2]
donde condicin debe ser una expresin numrica, relacional o lgica. Si la condicin es verdadera se
ejecuta la accin1 y si es falsa se ejecutar la accin2.

Sentencia SELECT

Esta expresin permite ejecutar una de varias acciones en funcin del valor de una expresin. Es una
alternativa a If... Then ... ElseIf cuando lo que se necesita es comprobar es la misma expresin con
diferentes valores. Su sintaxis es:

selec case expresion


case lista1
sentencias
case lista2
sentencias
case else
sentencias n
end select
donde expresin es una expresin numrica o alfanumrica, y lista1 y lista2.... representan una lista
que puede tener cualquiera de las formas siguientes:
expresin[,expresin]...
expresin to expresin
Is operador-de-relacin expresin
combinacin de las anteriores separadas por comas

Sentencia For... NexT

La sentencia for da lugar a un bucle que permite ejecutar un conjunto de sentencias cierto nmero de
veces. Su sintaxis es:

for variable = expresion1 to expresion2[Step expresion3]


[sentencias]
[Exit for]
[sentencias]
Next [variable[,variable...]]
Cuando se ejecuta una sentencia For en la que el valor de la expresin3 es positivo o no se ha
especificado, primero se ha asigna el valor de la expresin1 a la variable y a continuacin se
comprueba si la variable es mayor que la expresin 2, en cuyo caso se salta el cuerpo del bucle y se
contina en la lnea que ste a continuacin de la sentencia Next. En otro caso, se ejecutan las lnea
sde programa que haya entre la sentencia For y la sentencia Next. Por ltimo, la variable, se
incrementa en el valor de la expresin3, o en 1 si Step no se especifica, volvindose a efectuar la
comparacin entre la variable y la expresin2, y as sucesivamente. La sentencia exit for permite salir
del bucle for... next antes de que este finalice.

Sentencia While... Wend

Un bucle While repite la ejecucin de un conjunto de sentencias mientras una condicin dada sea cierta. La
condicin se verifica antes de ejecutarse el conjunto de sentencias.

While condicion
[sentencias]
Wend
Donde condicin es cualquier expresin numrica, relacional o lgica. La ejecucin de la sentencia
While sucede as:

1.- Se evala la condicin.


2.- Si el resultado de la evaluacin es falso, las sentencias que forman el cuerpo de While no se ejecutan y
se pasa el control a la siguiente sentencia en el cdigo a Wend.
3.- Si el resultado de la evaluacin es verdadero, se ejecutan las sentencias que forman el cuerpo de While
y el proceso descrito se repite desde el punto 1.

Sentencia Do... Loop

Un Loop(bucle) repite la ejecucin de un conjunto de sentencias mientras una condicin dada sea cierta, o
basta que una condicin dada sea cierta. La condicin puede ser verificada antes o despus de ejecutarse
el conjunto de sentencias:

Formato1 Formato2
Do
Do
[{While|Until}condicin]
[sentencias]
[sentencias]
[Exit do]
[Exit do]
[sentencias]
[sentencias]
Loop[{While|Until}condicin]
Loop

Donde condicin es cualquier expresin que se evale a True o a False.

Sentencia Goto

Transmite el control a una lnea especfica del cdigo, identificada por una etiqueta o por un nmero de
lnea. Su sintaxis es:
Goto {etiqueta/n de lnea}
Si la lnea a la que se transfiere el control es una sentencia ejecutable, se ejecuta esa sentencia y las que le
siguen. Si no es ejecutable, la ejecucin se inicia en la primera sentencia ejecutable que se encuentra tras
dicha lnea. Por ejemplo, el siguiente procedimeinto calcula e imprime el rea de uno o ms crculos.

Você também pode gostar