¿Porqué Visual Basic? - Universidad Rey Juan Carlos

Anuncio
TEMA 5: INT. A LA
PROGRAMACION
VISUAL BASIC 6.0
Asignatura: Introducción a la
Informática
2º CC Ambientales
Universidad Rey Juan Carlos
¿Porqué Visual Basic?
n Entorno gráfico WINDOWS
n Lenguaje de programación visual (no LOO)
n Herramienta sencilla
n Rápido desarrollo de aplicaciones
n Fácil manejo de bases de datos
n Permite la construcción de librerías (DLL’s)
n Depurador (debugger) para fácil detección y
corrección de errores.
1
ANTECEDENTES HISTÓRICOS (I)
n BASIC (Beginner's All purpose Symbolic Instruction
n
n
n
n
Code)
Desarrollado en 1964 por John G. Kemeny y Thomas
E. Kurtz del Dartmouth College
Pensado para principiantes
Cubría casi todas las necesidades para la ejecución
de programas
Evolución escasa en los 70, debido al auge de
FORTRAN y el COBOL
ANTECEDENTES HISTÓRICOS (II)
n En 1978 se definió una norma para unificar
los Basics existentes: normativa BASIC
STANDARD
n Con la aparición de los primeros ordenadores
personales, a principios de los ochenta, el
BASIC resurgió. Muchos lo usaban como
único sistema operativo (Sinclair, Spectrum,
Amstrad)
2
ANTECEDENTES HISTÓRICOS (III)
n Con el PC, salieron varias versiones (BASICA, GW-
BASIC) poco exitosas ya que:
- No era un lenguaje estructurado
- No existían herramientas de
compilación fiables
- No disponía de herramientas de
intercambio de información
- No tenía librerías
- No se podía acceder al interior de
la máquina
- Es interpretado.
ANTECEDENTES HISTÓRICOS (IV)
n Aparición del Quick-BASIC de Microsoft,
versión mejorada del BASIC
n El sist. operativo MS-DOS incluía una versión
reducida: Q-Basic
n Pasa a ser un lenguaje estructurado. Permite
programas modulares
n Poco éxito debido a la expansión del entorno
gráfico WINDOWS
3
ANTECEDENTES HISTÓRICOS (V)
n Decidieron unir:
â Sencillez de manejo del BASIC
â Las características de WINDOWS:
- Intercambio de información
- Librerías
- Drivers y controladores
- Manejo de bases de datos
ANTECEDENTES HISTÓRICOS (VI)
n Y surgió:
VISUAL BASIC
4
ANTECEDENTES HISTÓRICOS (VII)
n Conserva del BASIC de los años 80
únicamente su nombre y su sencillez
n Gran aceptación a nivel profesional
n Se ha convertido en la primera herramienta
de desarrollo de aplicaciones en entorno
Windows.
n Permite
realizar programas complejos
fácilmente.
ANTECEDENTES HISTÓRICOS (IX)
n Pero sigue siendo un lenguaje
INTERPRETADO
n No se pueden comparar sus prestaciones
con otros lenguajes cuando deseamos llegar
al fondo de la máquina y controlar uno a uno
sus registros (C++, Delphi).
5
CONCEPTOS BÁSICOS (I)
n Programa: Es la representación de un algoritmo,
escrito en algún lenguaje de programación.
n Lenguaje de programación: Es una notación
para escribir programas. Permite comunicarnos con
el hardware y dar así las órdenes adecuadas para la
realización de un determinado proceso. Viene
definido por una gramática o conjunto de reglas que
se aplican a un alfabeto constituido por el conjunto
de símbolos utilizados.
CONCEPTOS BÁSICOS (II)
n Estilo de programación:
Forma de organizar programas sobre la base de
algún modelo conceptual de programación y un
lenguaje apropiado
n Principales estilos de programación:
♦
Orientado a imperativos ............. Relaciones
Orientada a procedimientos ....... Algoritmos.
Orientada a la lógica................... Predicados.
Orientado a funciones ................. Funciones.
♦
Orientada a objetos ........... Clases y objetos.
♦
♦
♦
6
CONCEPTOS BÁSICOS (III)
n Programación imperativa:
Se caracteriza por usar comandos para actualizar las
variables.
La programación imperativa es aún la que domina.
Ej: BASIC , PASCAL...
CONCEPTOS BÁSICOS (IV)
n Programación estructurada:
Su objetivo es hacer más legible y lógico la
estructura del programa utilizando solamente tres
tipos de estructuras: secuenciales, selectivas, y
repetitivas.
Divide el programa en partes llamadas módulos, e
implementa cada uno de esos módulos por
separado.
Ej: PASCAL, C, ADA...
7
CONCEPTOS BÁSICOS (V)
n Programación estructurada: Estructura
secuencial
Las instrucciones de un programa se
ejecutan una después de la otra, en el mismo
orden en el cual aparecen en el programa.
CONCEPTOS BÁSICOS (VI)
n Programación estructurada: Estructura
selectiva
Plantea la selección entre dos alternativas
con base en el resultado de la evaluación de
una condición o predicado; equivale a la
instrucción IF de todos los lenguajes de
programación
8
CONCEPTOS BÁSICOS (VII)
n Programación estructurada: Estructura
repetitiva
Corresponde a la ejecución repetida de una
instrucción mientras que se cumple una
determinada condición
CONCEPTOS BÁSICOS (VIII)
n Programación Funcional (I):
En los sistemas de programación funcional
(SPF) un programa se considera una función
matemática, la cual describe una relación
entre una entrada y una salida, el concepto
de estado o variable se elimina
completamente.
9
CONCEPTOS BÁSICOS (IX)
n Programación Funcional (II):
Está basado en el uso de un conjunto fijo de formas
funcionales. Esas formas se utilizan básicamente
para construir nuevas funciones, que no usan
variables ni existe la asignación, sólo convierten
objetos en objetos.
Ej: Lisp es el ancestro de los lenguajes de
programación funcional; ML y Miranda son modernos
lenguajes de programación funcional
CONCEPTOS BÁSICOS (X)
n Programación Lógica:
La idea inicial del diseño se basó en una teoría del
lenguaje y la Lógica Matemática. Prolog es un
ejemplo de la programación lógica. El objetivo fue
integrar el principio de resolución de Robinson en un
lenguaje de programación. Este principio brinda una
regla de inferencia para la prueba mecánica de
teoremas en lugar de las múltiples reglas que los
lógicos proponían.
10
CONCEPTOS BÁSICOS (XI)
n Programación Orientada a Objetos (I):
Paradigma de programación en el cual los agentes
actuantes son entidades independientes cada uno
con su propia estructura interna, que se comunican
mutuamente respondiendo o haciendo demandas
(mensajes).
CONCEPTOS BÁSICOS (XII)
n Programación Orientada a Objetos (II):
Estas entidades, llamadas objetos, están constituidas
de propiedades (los datos privados que definen su
estado) y métodos (las operaciones aplicadas sobre
los datos). La estructura interna de un objeto no es
accesible por otro objeto o programa
11
CONCEPTOS BÁSICOS (XIII)
n Clasificación de los lenguajes de
programación orientados a objetos:
2 Lenguajes basados en objetos (LBO):
Es un lenguaje que soporta los objetos como
elementos del lenguaje. Este es el caso de Ada,
Modula, Actor, Visual Basic. Soportan la
funcionalidad de los objetos, pero el manejo de estos
debe hacerse con mecanismos externos
CONCEPTOS BÁSICOS (XIV)
2 Lenguajes basados en clases (LBC):
Es un LBO en el cual todo objeto tiene que
pertenecer a una clase. Este es el caso de CLU.
2 L. orientados a objeto (LOO):
Es un LBC en el cual se define un mecanismo de
herencia para crear una jerarquía de clases. Este es
el caso de SmallTalk, SIMULA, C++. Permiten
manipular las clases.
12
CONCEPTOS BÁSICOS (XV)
n OBJETO (I):
Representa una abstracción que se
caracteriza por un conjunto de servicios que
los clientes pueden solicitar.
Es como una cápsula que contiene datos, y
que además provee una serie de servicios
que son utilizados por otros objetos para
cumplir algún objetivo
CONCEPTOS BÁSICOS (XVI)
n OBJETO (II):
Los datos o variables que constituyen un objeto se
conocen como atributos o componentes (los
cuales podría ser a su vez objetos) tambien llamados
PROPIEDADES.
El ESTADO de un objeto está determinado por el
contenido de cada una de las variables que se
asocian al objeto.
13
CONCEPTOS BÁSICOS (XVII)
n OBJETO (III):
Cada uno de los servicios también se conoce
como MÉTODO u operación, y el conjunto de
los métodos a los que puede responder el
objeto se conoce como protocolo o
interface del objeto.
CONCEPTOS BÁSICOS (XVIII)
n CLASES (I):
Una clase es un conjunto de objetos que
comparten una estructura y comportamiento
comunes.
La clase representa una abstracción, la
esencia que comparten los objetos.
- Un objeto es un ejemplar concreto de una
clase.
14
CONCEPTOS BÁSICOS (XIX)
n CLASES (II):
La clase muestra:
1. Visión externa de comportamiento
(interface), que enfatiza la abstracción
escondiendo su estructura y secretos de
comportamiento.
2. Visión interna (implementación), que
abarca el código que se ofrece en la interface
de la clase.
VARIABLES
Una variable contiene un valor que puede
modificarse a lo largo de la ejecución de la
aplicación. Cada variable tiene atributos
propios como:
n Identificador: es el nombre que utilizamos al
referirnos a la variable en la aplicación
n Tipo: determina la clase de valores que puede
almacenar la variable
n Ámbito: determina en qué parte de la
aplicación se puede utilizar esa variable
15
CONSTANTES
n Constantes:
Son similares a las variables pero su valor no
cambia en la ejecución. También tienen
propiedades como el identificador, la clase y
el ámbito.
IDENTIFICADORES (I)
n Identificadores:
Es un nombre simbólico que esta asociado a
una dirección de memoria y que hace
referencia a un dato, a un procedimiento, a
una función o a un programa determinado.
16
IDENTIFICADORES (II)
n Reglas:
n Deben comenzar por una letra
n No pueden contener puntos, espacios en
blanco o paréntesis. Sí se permite el carácter
de subrayado y los caracteres de declaración
de tipo (%, &, #, !, @, y $)
n No pueden superar los 255 caracteres. Los
nombres de controles, formularios, clases y
módulos no deben exceder los 40 caracteres
IDENTIFICADORES (III)
n Reglas:
n No pueden ser iguales que las palabras clave
restringidas, p. ej. for, if, loop, next, val hide,
caption, and, etc.
n No
se distingue entre mayúsculas y
minúsculas,
p.
ej.:
LongitudTotal
y
longitudtotal son la misma variable.
17
VARIABLES (I)
n Declaración de variables:
Sirve para comunicarle al programa:
*que variables vamos a usar y
*de que tipo son.
Para declarar una variable se usa:
l Dim nombre_variable [As
tipo]
VARIABLES (II)
n Declaración implícita de variables:
No hay por qué declarar una variable antes
de utilizarla. Cuando se usa una variable no
declarada VB directamente crea esa variable.
Esto induce a errores. Por lo tanto:
*Declarar las variables explícitamente
*Basta incluir al principio de la sección de
Declaraciones:
Option Explicit
18
VARIABLES (III)
n Ambito de una variable (I)
Es la parte del código donde existe y es
accesible (visible), y por lo tanto, puede ser
utilizada.
Depende de:
èel lugar donde hagamos la declaración
èlos modificadores que le pongamos (Private o
Public)
VARIABLES (IV)
n Ambito de una variable (II)
Una variable se puede usar en:
4 un módulo: cuando se declara en la parte de
declaraciones de la sección general de ese
módulo así:
Dim nombre_variable [As tipo]
Private nombre_variable [As tipo]
Son variables privadas.
Están disponibles para todos los
procedimientos y funciones de ese módulo.
19
VARIABLES (V)
n Ambito de una variable (III)
Una variable se puede usar en:
4 un procedimiento o función (I): cuando se
declara dentro de ese procedimiento o
función o en el módulo al que pertenecen.
Si son declaradas dentro de un
procedimiento o función se denominan
variables locales.
Dim nombre_variable [As tipo]
Existen solo cuando se ejecuta el
procedimiento o función.
VARIABLES (VI)
n Ambito de una variable (IV)
un procedimiento o función (II):
Son inicializadas a cero.
Si queremos que existan durante toda la
ejecución y conserven su valor entre
llamadas hay que declararlas de la siguiente
manera:
Static nombre_variable [As tipo]
Son las variables estáticas.
Si un procedimiento se declara Static
todas sus variables son estáticas.
20
AMBITO DE LAS VARIABLES
n Una variable se puede usar en:
4 todos los módulos (I): cuando se declara en
la parte de declaraciones de la sección
general de un módulo así:
Public nombre_variable [As tipo]
Global nombre_variable [As tipo]
Se denominan variables públicas o
globales.
AMBITO DE LAS VARIABLES
4 todos los módulos (II):
Si la variable pública ha sido declarada
en un formulario, para usarla en otros
módulos hay que anteponerle el nombre del
formulario.
Ej: frmPractica.VarGlobal1
Si ha sido declarada en un modulo
estándar, para usarla en otros módulos solo
hay que anteponerle el nombre del modulo si
coincide con el nombre otra variable local.
21
CONSTANTES (I)
n Tipos:
n Intrínsecas o definidas por el sistema.
n Simbólicas o definidas por el usuario.
n Declaración de constantes:
[Public|Private] Const nombre [As tipo] = expresión
nombre es un identificador válido
CONSTANTES (II)
n Declaración de constantes (II):
expresión está compuesta por constantes
y operadores de cadena o numéricos; sin
embargo, no se puede utilizar llamadas a
funciones.
n Ambito:
Una constante tiene igual alcance que una
declaración de variable y se le aplican las
mismas reglas
22
TIPOS DE DATOS
TIPOS DE DATOS (I)
n El tipo de dato de una variable determina
cómo se almacenan los bits que representan
su valor en la memoria.
n Si declaramos una variable sin especificar su
tipo, por defecto será del tipo Variant.
23
TIPOS DE DATOS (II)
n Tipos de datos numéricos (I):
V Integer:
Para almacenar enteros. (2 bytes)
Rango: De -32768 a 32767.
Carácter de declaración : %
Ej: Dim Entero1 As Integer
Entero2%
Se suelen utilizar como variables de contador
en bucles.
TIPOS DE DATOS (III)
n Tipos de datos numéricos (II):
V Long:
Para almacenar enteros largos.
(4 bytes).
Rango: -2147483648 a 2147483647.
Carácter de declaración: &
Ej: Dim EnteroLargo1 As Long
EnteroLargo&
24
TIPOS DE DATOS (IV)
n Tipos de datos numéricos (III):
V Single:
Para almacenar valores reales de simple
precisión (4 bytes).
Rango: -3.40E+38 a 3.40E+38.
Carácter de declaración: !
Ej: Dim Real1 As Single
Real!
TIPOS DE DATOS (V)
n Tipos de datos numéricos (IV):
V Double:
Para almacenar valores reales de doble
precisión (8 bytes).
Rango: -1.79D+308 a 1.79D+308.
Carácter de declaración: #
Ej: Dim Real3 As Double
Real4#
25
TIPOS DE DATOS (VI)
n Tipos de datos numéricos (V):
V Currency:
Para almacenar valores con un punto
decimal fijo, máximo 4 decimales
(8 b.).
Rango: +/-922337203685477,5807
Carácter de declaración: @
Ej: Dim Euros1 As Currency
Euros@
Evita errores de redondeo.
TIPOS DE DATOS (VII)
n Tipos de datos Byte:
Almacena números enteros pequeños o un
carácter
(1 byte)
Rango: 0 a 255
Ej: Dim NAlumnos As Byte
n Se suele usar para almacenar datos binarios
(mediante arrays) en archivos.
26
TIPOS DE DATOS (VIII)
n Tipos de datos Boolean:
Almacena datos que pueden tomar dos
valores (verdadero o falso, 0 o 1...)
(2 bytes)
Rango: True o False, 0 o 1
Ej: Dim Funciona As Boolean
Private Activado As Boolean
TIPOS DE DATOS (IX)
n Tipos de datos String:
Guarda cadenas de caracteres.
(10 bytes + 1 byte/carácter))
Rango: entre 0 y 2 31 caracteres
Carácter de declaración: $
Ej: Dim Texto As String
Se pueden declarar cadenas de una longitud
fija:
Ej: Dim Nombre As String*Tamaño
27
TIPOS DE DATOS (X)
n Tipos de datos Date:
Almacena valores de fecha y hora.
(8 bytes)
Rango: 1/1/100 a 31/12/9999 y desde
0:00:00 a 23:59:59
Ej: Dim Fecha As Date
TIPOS DE DATOS (XI)
n Tipos de datos Object:
Almacena referencias a objetos.
(4 bytes)
Rango: Cualquier referencia a tipo
Object
Ej: Dim Objeto As Object
Set Objeto=OpenDatabase(“libro.mdb”)
28
TIPOS DE DATOS (XII)
n Tipos de datos Variant (I):
Es capaz de almacenar todos los tipos de
datos definidos en el sistema.
Con números 16 bytes.
Rango : Cualquier numero hasta el intervalo
de un tipo Double.
Con cadenas de caracteres 22 bytes + 1
byte/carácter.
Ej: Dim Variable
TIPOS DE DATOS (XIII)
n Tipos de datos Variant (II):
Al asignar un valor a una variable Variant VB
realiza automáticamente cualquier
conversión.
Ej: Dim UnValor
' De forma predeterminada es un tipo Variant.
UnValor = "17" ’ UnValor contiene "17" (cadena de 2caracteres)
UnValor = UnValor - 15
' UnValor ahora contiene
’ el valor numérico 2.
UnValor = "U" & UnValor ' UnValor ahora contiene
' "U2" (una cadena de dos caracteres)
29
TIPOS DE DATOS (XIV)
n Tipos de datos Variant (III):
n Advertencias:
Si realiza operaciones aritméticas o
funciones sobre un Variant, el Variant debe
contener un número.
Si está concatenando cadenas, utilice el
operador & en vez del operador +
TIPOS DE DATOS (XV)
n Tipos de datos Variant (IV):
n Empty: Es el valor que toma una variable
Variant antes de asignarle algún valor. Es 0
si se usa en una expresión numérica y una
cadena de longitud cero (“”) si se usa con
Strings.
n La función IsEmpty(Variable) nos devuelve
True si el valor de Variable es Empty y False
en el caso contrario.
n Podemos hacer: Variable=Empty
30
TIPOS DE DATOS (XVI)
n Tipos de datos Variant (V):
n Null: Se usa para especificar un valor
desconocido o nulo.
n Un expresión con un dato Null da Null.
n Una función con un argumento Null devuelve
Null.
n La función IsNull(Variable) nos devuelve
True si el valor de Variable es Null y False en
el caso contrario.
n Podemos hacer: Variable=Null
TIPOS DE DATOS (XVII)
n Tipos de datos Variant (VI):
n Error: es un valor especial que se utiliza para
indicar que se ha producido una condición de
error en un procedimiento.
n Nos permite elegir alternativas basadas en el
valor del error. Los valores de error se crean
convirtiendo números reales en valores de
error mediante la función CVErr.
31
TIPOS DE DATOS (XVIII)
n Conversión entre tipos de datos
n Funciones
Convierten una
conversión
Cbool
Cbyte
Ccur
Cdate
CDbl
expresión en
Boolean
Byte
Currency
Date
Double
de
TIPOS DE DATOS (XIX)
n Conversión entre tipos de datos
n Funciones
Convierten una
conversión
Cint
CLng
CSng
CStr
Cvar
CVErr
expresión en
Integer
Long
Single
String
Variant
Error
de
32
OPERADORES (I)
n Aritméticos:
Exponenciación
^
Cambio de signo (operador unario) Multiplicación,división
*, /
División entera
\
Resto de una división entera
Mod
Suma y resta
+, n Concatenación:
Concatenar o enlazar
&,+
OPERADORES (II)
n Relacionales:
Igual a
=
Distinto
<>
Menor que / menor o igual que
< <=
Mayor que / mayor o igual que
> >=
n Otros
Comparar dos expresiones de caracteres
Like
Comparar dos referencias a objetos Is
33
OPERADORES (III)
n Lógicos:
Negación
Not
And
And
Or inclusivo
Or
Or exclusivo
Xor
Equivalencia (opuesto a Xor)
Eqv
Implicación (False si el primer
operando
es True y el segundo Imp operando es
False)
SENTENCIAS
n Sentencia:
Es una línea de texto que indica que
operaciones se han de realizar.
n Sentencia de Asignación:
Forma general:
Variable = Expresión
El valor que resulte de evaluar la Expresión
es almacenado en la Variable especificada.
34
SENTENCIAS DE CONTROL
n Sentencias de control:
Permiten cambiar el flujo de ejecución de un
programa.
Tipos:
l Estructuras de decisión (condicionales)
l Estructuras de repetición (iterativas)
SENTENCIAS DE CONTROL
n Estructuras de decisión (I):
n If... Then
¬ If condición Then instrucción
- If condición Then
instrucciones
End If
Condición puede ser cualquier expresión que
dé como resultado un valor numérico. Cero
es False y True cualquier valor distinto de
cero.
35
SENTENCIAS DE CONTROL
n Estructuras de decisión (II):
n If... Then
n Explicación:
Si condición es True, se ejecutan todas las
instrucciones que siguen a la palabra clave
Then. Si la condición es False (=0) entonces
el programa continua con la siguiente
instrucción después de End If.
SENTENCIAS DE CONTROL
n Estructuras de decisión (III):
n If... Then...Else
¬ If condición Then instrucc1 [Else instrucc2]
- If condición Then
instrucción(es)
[Else
instrucción(es)]
End If
36
SENTENCIAS DE CONTROL
n Estructuras de decisión (IV):
n If... Then... Else
n Explicación:
Si condición es True, se ejecutan todas las
instrucciones que siguen a la palabra clave
Then. Si la condición es False (=0) entonces
se ejecutan las instrucciones que siguen a la
palabra clave Else.
SENTENCIAS DE CONTROL
n Estructuras de decisión (V):
n If... Then... ElseIf
If condición1 Then
[bloque de instrucciones 1]
[ElseIf condición2 Then
[bloque de instrucciones 2]] ...
[Else
[bloque de instrucciones n]]
End If
37
SENTENCIAS DE CONTROL
n Estructuras de decisión (VI):
n If... Then... ElseIf
n Explicación: Evalúa primero condición1. Si es
False, evalua condición2 y así
sucesivamente, hasta que encuentre una
condición True. Entonces ejecuta el bloque
de instrucciones del número correspondiente.
Si ninguna condición es True se ejecuta el
bloque de instrucciones de Else (si existiera).
SENTENCIAS DE CONTROL
n Estructuras de decisión (VII):
n Select Case:
n Select Case expresión_test
[Case lista1
[bloque de instrucciones 1]]
[Case lista2
[bloque de instrucciones 2]]
...
[Case Else
[bloque de instrucciones n]]
End Select
38
SENTENCIAS DE CONTROL
n Estructuras de decisión (VIII):
n Select Case:
*expresión_test es una expresión numérica o
alfanumérica.
*lista1, lista2, ... pueden ser:
1. expresión
2. expresión To expresión
3. Is operador-de-relación expresión
4. combinación de las anteriores
separadas por comas.
SENTENCIAS DE CONTROL
n Estructuras de decisión (IX):
n Select Case:
Explicación: Se evalúa la expresion_prueba y
va comparando el resultado con los valores
de cada Case de la estructura. Si coincide
con alguno, ejecuta el bloque de
instrucciones asociado y salta a la siguiente
instrucción después del End Select. Si no
coincide con ninguno ejecuta el bloque de
instrucciones n (del Else).
39
SENTENCIAS DE CONTROL
n Estructuras de decisión (X):
n Select Case: Ejemplo:
Select Case Numero ’ Se evalúa la variable Numero.
Case 1 To 5
‘ Numero está entre 1 y 5.
Resultado = "Se encuentra entre 1 y 5”
Case 6, 7, 8
‘ Numero es uno de los tres valores.
Resultado = "Se encuentra entre 6 y 8”
Case Is = 9, Is >= 10
‘ Numero es mayor que 9
Resultado = "El valor es 9 o más grande”
Case Else
‘ Resto de valores.
Resultado = "El número es 0 o negativo”
End Select
SENTENCIAS DE CONTROL
n Estructuras de repetición (I):
n Un bucle es una sucesión repetitiva de
instrucciones, que se estarán realizando
mientras se cumpla una condición o mientras
no se cumpla otra condición.
n Existen dos tipos de bucle:
*
Bucle por contador.
*
Bucle por condición.
40
SENTENCIAS DE CONTROL
n Estructuras de repetición (II):
n Do... Loop:
Es un bucle por condición.
Posee dos formatos:
¬ Do [{While/Until} condicion]
[bloque de instrucciones]
Loop
- Do
[bloque de instrucciones]
Loop [{While/Until} condicion]
SENTENCIAS DE CONTROL
n Estructuras de repetición (III):
n Do... Loop:
Explicación:
Do While condición : Evalúa la condición. Mientras
la condición sea True (cierta) se ejecuta el bloque de
instrucciones. El bucle termina cuando la condición
se hace False.
Do Until condición : Evalúa la condición. Hasta que
la condición sea True (cierta) se ejecuta el bloque de
instrucciones. El bucle termina cuando la condición
se hace True
41
SENTENCIAS DE CONTROL
n Estructuras de repetición (IV):
n Do... Loop:
Explicación:
Loop While condición: Ejecuta el bloque de
instrucciones. Evalúa la condición. Mientras la
condición sea True (cierta) se ejecuta el bloque de
instrucciones. El bucle termina cuando la condición
se hace False.
Loop Until condición: Ejecuta el bloque de
instrucciones. Evalúa la condición. Hasta que la
condición sea True (cierta) se ejecuta el bloque de
instrucciones. El bucle termina cuando la condición
se hace True
SENTENCIAS DE CONTROL
n Estructuras de repetición (V):
n While... Wend:
n Formato:
While condicion
[bloque de instrucciones]
Wend
Explicación:
Funciona igual que la instrucción
Do While... Loop.
42
SENTENCIAS DE CONTROL
n Estructuras de repetición (VI):
n For...Next:
Es un bucle por contador. Se usa si sabemos
el número de veces que se tiene que ejecutar
el bloque de instrucciones. Formato:
For Contador = exp1 To exp2 [Step exp3]
[bloque de instrucciones]
Next [Contador]
SENTENCIAS DE CONTROL
n Estructuras de repetición (VII):
n For...Next: Explicación:
1- Contador = exp1.
2- Comprueba si Contador es mayor que exp2.
Si lo es sale del bucle. (Si exp3 es negativo,
comprueba si Contador es menor que exp2. Si
lo es sale del bucle)
3- Ejecuta bloque de instrucciones.
4- Incrementa Contador en 1 o en exp3, si
se especificó.
5- Repite los pasos 2 a 4.
43
SENTENCIAS DE CONTROL
n Estructuras de repetición (VIII):
n For Each...Next:
n Formato:
For Each Elemento In Grupo
[ bloque de instrucciones]
Next Elemento
n Explicación:
Ejecuta el bloque de instrucciones para cada
Elemento perteneciente al Grupo (puede ser
un array o una colección).
SENTENCIAS DE CONTROL
n Estructuras de repetición (IX):
n For Each...Next:
Es útil cuando no se sabe el número de
elementos que tiene el array o la colección
de objetos.
Restricciones:
*Grupo es un array. Elemento tiene que ser
una variable Variant.
*Grupo es una colección de objetos. Elemento
es una variable Variant o una variable
Object.
44
Descargar