18/04/2021 Ing. Johanna Páez S.
- Unidad VI y V 1
Primera Forma
Haciendo clic en el Menú Inicio, luego
posicionamos el cursor en la opción Programas,
luego buscamos la opción Microsoft Visual
Studio 6.0 y luego hacemos clic en la
opción Microsoft Visual Basic 6.0
Segunda Forma
Haciendo doble clic en
el siguiente icono, que
encontramos el escritorio
de Windows
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 2
Después de hacer clic en Microsoft Visual Basic 6.0, aparecerá una pantalla
como la que se muestra a continuación, en ella se debe elegir que tipo
proyecto se va a realizar… entonces hacemos clic en la Opción EXE estándar
y luego en el botón Aceptar ó doble clic en la Opción EXE estándar.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 3
Después de hacer elegido el tipo de proyecto que queremos realizar, podemos
comenzar a desarrollar nuestro proyecto. A continuación se muestra la pantalla
inicial de Microsoft Visual Basic 6.0.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 4
Barra de Menú Barra de Herramienta Estándar
Barra de Título
Explorador
de proyectos
Ventana de
Propiedades
Ventana
Posición del
Cuadro de Formulario Formulario
Herramientas
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 5
Botones de
Deshacer y Rehacer
Guardar Ventana
Agregar Proyecto Posición del
Nuevo Editor Explorador Formulario
Proyecto de Menú de proyectos
Agregar
Nuevo Abrir Iniciar Ventana de Cuadro de
Formulario Proyecto Propiedades Herramientas
Tamaño del
Botones de Edición Formulario
Cortar, Copiar y Pegar en Píxel
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 6
Lugar donde están PictureBox
situado cada uno de los Cursor
objetos que utilizaremos TextBox
Label
en Nuestros Proyectos
Frame
CommandButton
CheckBox
OptionButton
ComboBox ListBox
HScrollBar VScrollBar
Timer DriveListBox
DirListBox FileListBox
Shape Line
Image Data
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 7
Si hacemos clic en este Si hacemos clic en
icono visualizamos el este icono
Área de Código visualizamos el
Área del Formulario
En esta área observaremos
cada uno de los formularios
que conforman
Nuestro Proyecto
En esta área observaremos
la
posición en monitor que va
a tener cada uno de los
formularios que conforman
Nuestro Proyecto
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 8
Lugar donde se
pueden cambiar cada Nombre_del_Objeto Tipo
una las propiedades de
los Objetos. Por
ejemplo: Color del
Objeto, Fuente, Color Propiedades del Objeto
de la fuente,
apariencia, estilo, etc.
Estás propiedades
varían dependiendo
del Objeto
Breve explicación de la
propiedad seleccionada
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 9
OptionButton
CheckBox
Label TextBox
Frame
ComboBox
ListBox
CommandButton Image Picture
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 10
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 11
Tamaño/
Alg. Tipo Descripción Rango
Bytes
Integer Entero 2 -32768 a 32767
Entero
-2.147483648 a
Long Entero largo 4
2.147483648
Single Simple precisión 4 -3.40E+38 a 3.40E+38
Real
Double Doble precisión 8 -1.79D+308 a 1.79D+308
Al Cadena de 1 byte/
fa String caracteres de 64 K aproximadamente
longitud fija Carácter
nu
mé Cadena de
ri 10 bytes + Hasta 231 caracteres
String caracteres de
co 1 byte/car aproximadamente
longitud variable
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 12
Tamaño/
Tipo Descripción Rango
Bytes
Boolean Lógico 2 True o False
Date Fecha/hora 8
Byte Alfanumérico 1 0 a 255
Cualquier valor
Variant Con número 16 numérico hasta el
intervalo de tipo Double
22 byte +
Variant Con caracteres Igual a string variable
1 byte/car
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 13
Tipo Operación Operador Prioridad
Exponenciación ^
Más alta
Multiplicación y División *,/
División entera \
Aritmético
Resto de una división
MOD
entera
Suma y Resta +, -
Concatenación Concatenar o Enlazar &
Menor, Mayor, Menor o
<, >, <=, >=,
Relacional igual, Mayor o igual,
=, <>
Igual y Diferente
Negación NOT
Lógico Conjunción AND
Más baja
Disyunción OR
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 14
Es un valor que no cambia durante la ejecución de una
aplicación, en Visual Basic una constante alfanumérica va entre
comillas dobles. Declaración de las Constantes:
CONST nombre_constante [as tipo = expresión]
Donde:
nombre_constante: es el nombre especificado bajo las reglas
expuestas para las variables
tipo: Es el tipo de dato almacenado y asociado a la constante. Si no
se especifica se asigna el más apropiado al valor. Cero si es una
variable numérica o nulo si es de carácter
expresión: puede ser numérica, alfanumérica o de tipo fecha y
hora.
Ejemplo: CONST PI = 3.1415926, DOSPI = 2*PI
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 15
Una variable contiene un valor cuyo valor puede cambiar
durante la ejecución de una aplicación. Es una localización de
memoria en la que se puede almacenar un dato.
Toda variable tiene atributos propios como:
Nombre de la variable: es el conjunto de caracteres con los cuales
se identifica una variable en un momento determinado.
Tipo: determina qué clase de valor puede almacenar la variable.
Ámbito: especifica en qué parte de la aplicación es reconocida la
variable y por tanto puede ser utilizada.
Toda variable se inicializa en el valor cero si es numérica
o nulo si la variable es de carácter.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 16
El nombre de la variable comienza por una letra, los
demás caracteres pueden ser letras o números o el carácter
especial ( _ ) y debe ser única dentro de su ámbito.
La longitud del nombre puede tener hasta 255 caracteres.
No puede utilizar palabras reservadas del Visual Basic.
Debe existir correspondencia con el nombre y el valor a
almacenar
No acepta espacios en blancos en el nombre de la variable
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 17
DIM variable1 As tipo, variable2 AS tipo,...
Donde:
Variable1, Variable2: es el nombre especificado bajo las reglas
expuestas anteriormente
As tipo: Es el tipo de dato almacenado en la variable, los cuales
son de los tipos manejados por el Visual Basic.
Ejemplo
DIM nomb as string*30, nota as single
DIM sueldo as single, precio as single, edad as integer ,x
Con este ejemplo la variable X es de tipo Variant
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 18
Es una orden de código precedida por una comilla
simple (’), con la cual Visual Basic no ejecuta ninguna
acción sobre ella, esto significa, que dicha orden no es
ejecutable, se utiliza para aclarar puntos al programador
de la parte de código que presenta, es a través de esta orden
que se le da documentación interna a las aplicaciones de
Visual Basic. Un ejemplo de uso de esta orden se puede
presentar de la siguiente manera:
‘ Declaración de variables
Dim nota as single, nota1 as single, nota2 as single
‘ Se realiza la suma de las dos notas parciales
nota = nota1 + nota 2
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 19
Es el proceso de darle valor a una variable, es decir,
almacenar un dato en una posición de memoria.
Variable = Expresión
Donde
Variable: representa el nombre de la variable que almacenará
el dato.
Expresión: puede ser una constante, una variable o una
expresión valida.
Ejemplos:
B=4 Nota1 = 20.5
A=B*3 Nota2 = 25.0
Nombre = “ Pedro Pérez ” NotaTotal = Nota1 + Nota2
Cedula = “ 13265835 ” Datos = Nombre + Cedula
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 20
Instrucción que permite asignarle valor a una
variable, pidiéndole información al usuario.
Sintaxis:
Variable = InputBox (“Mensaje”)
Donde:
Variable: Nombre que identifica a la variable
Mensaje: frase que le indica al usuario que información se
le está pidiendo.
Ejemplo:
Nombre = InputBox (“Ingrese el nombre del alumno:”)
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 21
Instrucción que permite mostrarle al usuario los
resultados obtenidos. Ante de toda instrucción Print se debe
colocar la palabra reservada “Show”
Sintaxis:
Print “ Mensaje ” ; Variable
Donde:
Mensaje: frase que le indica al usuario que información
se le está mostrando.
Variable: el valor que se desea mostrar al usuario.
Ejemplo:
Print “ La Nota Final es: “ ; NotaTotal
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 22
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 23
Una compañía posee los siguientes datos de entrada:
Número de Vendedores, Número de Ayudantes y el
Número de Secretarias. Diseñe una aplicación en
Visual Basic para determinar e imprimir:
a.- Cantidad de personas que tiene la empresa.
b.- Porcentaje de vendedores de la empresa.
c.- Porcentaje de ayudantes que tiene la empresa.
d.- Porcentaje de secretarias que tiene la empresa.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 24
Para realizar esta aplicación cambie las siguientes propiedades al formulario
Objeto Propiedad Valor de la propiedad Descripción
Form1 Caption Ejemplo de Vendedores Título de la barra del
formulario
BackColor Blanco Color del formulario
Font Times New Roman, Fuentes de las letras
Cursiva 9
Haga doble clic sobre el formulario para que se cargue en el área de código
el procedimiento Private Sub Form_Load() y escriba dentro de este
procedimiento el siguiente conjunto de ordenes o código:
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 25
Desarrollo del algoritmo propuesto:
Private Sub Form_Load()
Dim NumVend As Integer, NumAyud As Integer, NumSecr As Integer
Dim ContEmp As Integer, PorcVend As Single, PorcSecr As Single
Dim PorcAyud As Single
NumVend = InputBox("Introduzca el número de vendedores ")
NumAyud = InputBox("Introduzca el número de ayudantes ")
NumSecr = InputBox("Introduzca el número de secretarias ")
ContEmp = NumVend + NumSecr + NumAyud
PorcVend = NumVend * 100 / ContEmp
PorcAyud = NumAyud * 100 / ContEmp
PorcSecr = NumSecr * 100 / ContEmp
Show
Print "El total de personas es "; ContEmp
Print "El porcentaje de vendedores es "; PorcVend; " %"
Print "El porcentaje de ayudantes es "; PorcAyud; " %"
Print "El porcentaje de secretarias es "; PorcSecr; " %"
End Sub
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 26
Para grabar dicha aplicación se debe ejecutar la siguiente secuencia de pasos:
1.- Haga clic en el menú Archivo y luego en la opción Guardar Proyecto
2.- Esta opción mostrará un cuadro de diálogo como el siguiente:
Área donde se selecciona la Unidad
Moverse de Nivel Crear una
y carpeta en donde se grabará el
carpeta
Proyecto
Nueva
Área donde
Área donde se se
coloca el nombre encuentran
a dar los
al Proyecto proyectos
guardados
en esta
carpeta
Extensión dada al Proyecto
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 27
3.- Luego de colocar el Nombre con que vamos a guardar el proyecto debemos
hacer clic en el botón guardar.
4.- Luego aparecerá una pantalla para guardar cada uno de los Formularios
creados
Área donde se selecciona la Unidad Moverse de Nivel Crear una
y carpeta en donde se grabará el carpeta
Formulario Nueva
Área donde
Área donde se se
coloca el nombre encuentran
a dar los
al Formulario Formularios
guardados
en esta
carpeta
Extensión dada a los Formularios
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 28
Una vez guardada la aplicación realizada debemos ejecutarla para
ver los resultados.
Para ejecutar una aplicación en Visual Basic debemos hacer clic en el
Botón , que aparece en la barra de herramientas de la ventana de Visual
Basic. La aplicación comenzará solicitando los datos de entrada y luego de las
operaciones indicadas se mostrará en el formulario los resultados de dicha
aplicación. Una corrida de este proyecto es el mostrado en el siguiente
formulario
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 29
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 30
Las estructuras selectivas permiten establecer operaciones
de comparación para ejecutar o no un grupo ordenes o instrucciones,
es decir, en base al resultado de la evaluación de una expresión lógica
(cierto o falso) se permite la ejecución de una o varias acciones.
Entre las estructuras de selección que presenta el lenguaje se tiene:
Sentencia If
Sentencia If then Else if
Sentencia Select Case
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 31
Sentencias If - If then Else
Permite tomar una decisión con respecto al camino a seguir y las
acciones a ejecutar en un programa o aplicación, basándose
en el resultado de la evaluación de una condición o comparación
If Condición then If Condición then
Inst. X1
Inst. X1 :
: Inst Xn
Inst Xn Else
Inst. Y1
End If :
Inst Yn
End If
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 32
Sentencia If then ElseIf
If Condición1 then
Inst. A1
:
Inst An
ElseIf Condición2 then
Inst. B1
:
Inst Bn
ElseIf Condición3 then
Inst. C1
:
Inst Cn
Else
Inst. D1
:
Inst Dn
End If
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 33
Sentencia If - If then Else - Ejercicio
En el Banco Universal “El Dorado” C.A., se requiere el control de
las diferentes transacciones de sus clientes. Para ello se cuenta con
la siguiente información del cliente: Nombre, Cédula de Identidad,
Saldo Inicial, Tipo de Transacción (Deposito o Retiro) y Monto de
Transacción. Se debe validar en el retiro que si el monto de
transacción es mayor que el saldo inicial, no debe hacerse la
transacción y enviar un mensaje de sobregiro del mismo. Diseñe
un algoritmo en Visual Basic que calcule el saldo actual del
Cliente.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 34
Sentencia If - If then Else - Ejercicio
Observamos las diferentes formas que podemos resolver el ejercicio:
If TipoT = "D" Or TipoT = "d" Then If TipoT = "D“ Or TipoT = "d“ Then
SA = SaldoI + MtoTrans SA = SaldoI + MtoTrans
End If ElseIf TipoT = "R" Or TipoT = "r“ Then
If TipoT = "R" Or TipoT = "r" Then If MtoTrans <= SaldoI Then
If MtoTrans <= SaldoI Then SA = SaldoI - MtoTrans
SA = SaldoI - MtoTrans Else
End if MsgBox "No puede realizar su
If MtoTrans > SaldoI Then transacción - Sobregiro"
MsgBox "No puede realizar su End If
transacción - Sobregiro" End If
End If
End If
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 35
Sentencia Select Case
Select Case Expresión
Case valor1
Esta sentencia permite ejecutar Inst. X1
:
una de varias acciones en función Inst Xn
del valor de una expresión Es una Case valor2
Inst. Y1
sentencia If then Elseif cuando :
Inst Yn
lo que se necesito es comparar la :
misma expresión con diferentes Case Else
Inst. Z1
valores. Su sintaxis es: :
Inst Zn
End Select
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 36
Sentencia Select Case
Expresión es una expresión numérica o de carácter
Valor1, valor2, .... representa una lista que puede tener cualquiera de las
formas siguiente:
Expresión {, expresión}...
Expresión to expresión
Is operador de relación expresión
Combinación de las anteriores separadas por coma
Expresión {, expresión}: es cualquier expresión numérica o de carácter
Expresión to expresión: el valor más pequeño debe aparecer en primer
lugar.
Is operador de relación expresión: cuando se desea comparar el valor con
cualquiera de los operadores relacionales.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 37
Sentencia Select Case - Ejemplos
Show
Select Case nota
Case “s”,”S” Case 20
Print “La nota fue la mejor demostración
Case < 11.5
de su esfuerzo”
Case 5 Case 17 to 19
Print “La nota fue excelente”
Case –1, x to 5
Case 15, 16
Case Is >18 Print “La nota fue sobresaliente”
Case 10 to 14
Print “La nota fue buena”
Case <10
Print “La nota fue deficiente”
End Select
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 38
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 39
Las estructuras repetitivas también denominadas
ciclos permiten ejecutar un conjunto de ordenes más de una
vez. En VB las estructuras repetitivas manejadas son las
siguientes:
Sentencia For ... Next
Sentencia While ... Wend
Sentencia Do … Loop Until
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 40
Sentencia For... Next
Ciclo que permite ejecutar un conjunto de sentencias un número
específico de veces, con esta sentencia se conoce el número de veces que
se desea ejecutar el ciclo. Su sintaxis es:
For Variable = ValorInicial To ValorFinal [Step Paso]
Inst X1 variable: variable utilizada como contador
: del ciclo
Inst Xn ValorInicial: valor inicial se da la variable
contador
Next Variable ValorFinal: valor final de la variable
contador con la cual se realiza la
Para salir del ciclo comparación para poder salir del ciclo
antes que este Paso: es el valor incremento o decremento
finalice se utiliza de la variable contador, al no especificarse
Exit For se asume el valor 1.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 41
Sentencia For ... Next - Ejemplo
Diseñe una aplicación en Visual Basic que genere e imprima cada uno
de los N primeros términos de la siguiente serie y la suma de ellos.
1.4X 6 1.6X 9 1.8X12 2.0X15
Serie ...
3 9 27 81
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 42
Private Sub Form_load()
Dim i As Integer, n As Integer, num As Single
Dim den As Single, x As Single, s As Single
Dim ter As Single
x = InputBox(“Introduzca el valor de x")
n = InputBox(“Introduzca el Nro de términos")
If x <> 0 And n > 0 Then
Show
For i = 1 To n
num = (( i * 0.2 ) + 1.2) * X ^ (( i * 3) + 3)
den = 3 ^ i
ter = num / den
s = s + ter
Print “El término ” & CStr (i) & “ es: ” & CStr (ter)
Next I
Print “La suma de los” & CStr (n) & “términos es:” & CStr (s)
Else
MsgBox (“Debes ingresar datos válidos ”)
End if
End Sub
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 43
Sentencia While... Wend
Esta sentencia repite la ejecución de un conjunto de sentencias mientras
sea cierta la condición dada. La condición se verifica antes de ejecutarse el
conjunto de sentencias. Su sintaxis es:
While Condición Condición: es la condición a evaluar, si el
resultado de la evaluación es verdadero se
Inst X1 entrará a ejecutar las instrucciones que
: están dentro del ciclo, en caso de ser
Inst Xn falsa la evaluación de la condición se sale
Inst. de Salida del ciclo.
Wend Inst. de salida: Una vez que se ha
entrado en el ciclo debe incluirse dentro
Para salir del ciclo del ciclo una instrucción que permita
antes que este hacer falsa la evaluación de la condición y
finalice se utiliza poder entonces salir del mismo.
Exit Do
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 44
Una distribuidora de materiales, comercializa 2 tipos de vigas: de primera con un
valor de 30.000 Bs. y vigas de segunda a un costo de 20.000 Bs. Además se tiene
las siguientes políticas de descuentos:
De 11 a 14 vigas de primera tiene un descuento del 5% sobre el monto de
compra.
Más de 14 vigas de primeras tiene un descuento del 10% sobre el monto de
compra.
Más de 5 vigas de segunda tiene un descuento de 3% sobre el monto de
compra
Diseñe un algoritmo en VB que lea por cada cliente: Nombre del Cliente, Tipo
de Viga comprada y cantidad de vigas compradas; e imprima los siguiente:
a. Calcular el monto de la compra
b. Calcular el monto del descuento
c. Calcular el monto a pagar
d. ¿Cuántos clientes compraron vigas de primera?
e. Promedio de montos netos
f. Porcentaje de clientes que compraron vigas de segunda
g. Encuentre el cliente que obtuvo el mayor monto neto y muestre su nombre.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 45
Private Sub Form_Load()
‘ Declaración de Variables
Dim Resp As String, NomClie As String, TipVig As String
Dim NumVigC As Integer, MtoComp As Single, MtoDscto As Single
Dim MtoNeto As Single, ContV1 As Integer, PromMN As Single
Dim AcumMN As Single, NC As Integer, PorcV2 As Single
Dim ContV2 As Integer, MMtoN As Single, NombMMN As String
‘ Declaración de Constantes
Const Viga1 As Single = 30000
Const Viga2 As Single = 20000
‘ Inicialización de Contadores y Acumuladores
Resp = "S": MMtoN = 1
…...
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 46
While Resp = "S" Or Resp = "s“ ‘ Inicio del Ciclo
‘ Validación de las Entradas
Do
NomClie = InputBox ("Introduzca el Nombre del Cliente:")
Loop Until NomClie <> ""
Do
TipVig = InputBox("Introduzca el Tipo de Viga a Comprar (P)rimera ó_
(S)egunda:")
Loop Until TipVig = "P" Or TipVig = "p" Or TipVig = "S" Or TipVig = "s“
Do
NumVigC = InputBox("Introduzca el Número de Vigas a compras:")
Loop Until NumVigC > 0
NC = NC + 1 ‘ Contados de Clientes
Select Case TipVig
Case "P", "p": ContV1 = ContV1 + 1 ‘ Para Vigas de Primera
MtoComp = NumVigC * Viga1
If NumVigC < 11 Then
MtoDscto = 0
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 47
ElseIf NumVigC <= 14 Then
MtoDscto = MtoComp * 5 / 100
Else
MtoDscto = MtoComp * 10 / 100
End If
Case "S", "s": ContV2 = ContV2 + 1 ‘ Para Vigas de Segunda
MtoComp = NumVigC * Viga2
If NumVigC <= 5 Then
MtoDscto = 0
Else
MtoDscto = MtoComp * 3 / 100
End If
End Select
MtoNeto = MtoComp - MtoDscto
AcumMN = AcumMN + MtoNeto
If MMtoN < MtoNeto Then
MMtoN = MtoNeto
NombMMN = NomClie
End If
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 48
Show
Print "El Cliente: " & NomClie & " debe cancelar:"
Print "El Monto de la Compra es:"; MtoComp
Print "El Monto del Descuento es:"; MtoDscto
Print "El Monto Neto a pagar es:"; MtoNeto
Do
Resp = InputBox("Desea procesar otro cliente: (S/N): ")
Loop Until Resp = "S" Or Resp = "s" Or Resp = "N" Or Resp = "n"
Wend
PromMN = AcumMN / NC
PorcV2 = ContV2 * 100 / NC
Print "El Número de clientes que compraron Vigas de Primera es:"; ContV1
Print "El Promedio de Montos Netos es:"; PromMN
Print "El Porcentaje de clientes que compraron Vigas de Segunda es:"; PorcV2;_
" %"
Print "El Cliente que obtuvo mayor monto neto es: " & NombMMN & " y el _
monto fue " & CStr(MMtoN)
End Sub
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 49
Sentencia Do… Loop Until
Esta sentencia repite un conjunto de ordenes hasta que la condición
establecida en el ciclo sea cierta, verificándose al final del conjunto de
sentencias del mismo, la condición. El formato de sintaxis es el siguiente:
Do Condición: es la condición a evaluar, si el
Inst X1 resultado de la evaluación es falso se
: entrará a ejecutar las ordenes que están
Inst Xn dentro del ciclo, en caso de ser verdadera
Inst. de Salida la evaluación de la condición se sale del
Loop Until Condición ciclo.
Inst. de salida: Una vez que se ha
entrado en el ciclo debe incluirse dentro
Para salir del ciclo del ciclo una orden que permita hacer
antes que este verdadera la evaluación de la condición y
finalice se utiliza poder entonces salir del mismo.
Exit Do
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 50
Sentencia Do… Loop Until - Ejemplo
Ahora resolvamos el mismo ejercicio de la
sentencia anterior ( While…Wend), pero
aplicando la sentencia Do.. Loop Until
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 51
Private Sub Form_Load()
‘ Declaración de Variables
Dim Resp As String, NomClie As String, TipVig As String
Dim NumVigC As Integer, MtoComp As Single, MtoDscto As Single
Dim MtoNeto As Single, ContV1 As Integer, PromMN As Single
Dim AcumMN As Single, NC As Integer, PorcV2 As Single
Dim ContV2 As Integer, MMtoN As Single, NombMMN As String
‘ Declaración de Constantes
Const Viga1 As Single = 30000
Const Viga2 As Single = 20000
‘ Inicialización de Contadores y Acumuladores
MMtoN = 1
…...
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 52
Do ‘ Inicio del Ciclo
‘ Validación de las Entradas
Do
NomClie = InputBox ("Introduzca el Nombre del Cliente:")
Loop Until NomClie <> ""
Do
TipVig = InputBox("Introduzca el Tipo de Viga a Comprar (P)rimera ó_
(S)egunda:")
Loop Until TipVig = "P" Or TipVig = "p" Or TipVig = "S" Or TipVig = "s“
Do
NumVigC = InputBox("Introduzca el Número de Vigas a compras:")
Loop Until NumVigC > 0
NC = NC + 1 ‘ Contados de Clientes
Select Case TipVig
Case "P", "p": ContV1 = ContV1 + 1 ‘ Para Vigas de Primera
MtoComp = NumVigC * Viga1
If NumVigC < 11 Then
MtoDscto = 0
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 53
ElseIf NumVigC <= 14 Then
MtoDscto = MtoComp * 5 / 100
Else
MtoDscto = MtoComp * 10 / 100
End If
Case "S", "s": ContV2 = ContV2 + 1 ‘ Para Vigas de Segunda
MtoComp = NumVigC * Viga2
If NumVigC <= 5 Then
MtoDscto = 0
Else
MtoDscto = MtoComp * 3 / 100
End If
End Select
MtoNeto = MtoComp - MtoDscto
AcumMN = AcumMN + MtoNeto
If MMtoN < MtoNeto Then
MMtoN = MtoNeto
NombMMN = NomClie
End If
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 54
Show
Print "El Cliente: " & NomClie & " debe cancelar:"
Print "El Monto de la Compra es:"; MtoComp
Print "El Monto del Descuento es:"; MtoDscto
Print "El Monto Neto a pagar es:"; MtoNeto
Do
Resp = InputBox("Desea procesar otro cliente: (S/N): ")
Loop Until Resp = "S" Or Resp = "s" Or Resp = "N" Or Resp = "n"
Loop Until Resp= “N” Or Resp = “n” ‘ Fin del Ciclo
PromMN = AcumMN / NC
PorcV2 = ContV2 * 100 / NC
Print "El Número de clientes que compraron Vigas de Primera es:"; ContV1
Print "El Promedio de Montos Netos es:"; PromMN
Print "El Porcentaje de clientes que compraron Vigas de Segunda es:"; PorcV2;_
" %"
Print "El Cliente que obtuvo mayor monto neto es: " & NombMMN & " y el _
monto fue " & CStr(MMtoN)
End Sub ‘ Fin del Ejercicio
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 55
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 56
A
Muestra un texto que el usuario no puede modificar durante la ejecución de
una aplicación. Entre sus propiedades se destacan:
muestra la tira de caracteres (Texto) que aparecen por
Caption
pantalla.
Name nombre del control, por defecto le asigna label1
Backcolor color del fondo de la etiqueta.
establece el color con se mostrará el texto presentado en el
Forecolor
control.
permite cambiar el tipo y estilo de letra a colocar sobre la
Font
etiqueta.
Alignment establece la alineación del texto mostrado en la etiqueta.
establece el estilo del borde de la etiqueta. Para dar borde
BorderStyle
seleccione el valor 1 o Fixed.
establece un valor que determina si el objeto puede o no
Enabled
responder a eventos generado por el usuario.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 57
A
devuelve o establece un valor que determina si el tamaño de un
control cambia automáticamente para presentar todo su
contenido. Su valor por defecto es false indicando que
Autosize
mantendrá constante el tamaño del control y true cambia el
tamaño para adaptarlo al tamaño de la tira de caracteres que
desea mostrar.
establece un valor que determina si el objeto esta visible o está
Visible
oculto.
Tag guarda cualquier dato adicional para el programa.
establece un valor que determina si el control se expande para
Wordwrap
ajustarse al texto incluido en el mismo.
establece el texto mostrado cuando el ratón se sitúa sobre el
Tooltiptext
control.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 58
Ahora realicemos algunos cambios para mostrar las salidas del
algoritmo, utilizaremos el mismo enunciado pero ahora mostraremos los
resultados en etiquetas.
Debemos colocar cuatro (4) Label ó etiquetas en el Formulario
Form1. Y cambiaremos algunas de las propiedades de los Objetos.
Objeto Propiedad Valor de la propiedad Descripción
Form1 BackColor Amarillo Color del formulario
Nombre dado a la
Name L1
etiqueta
Times New Roman,
Font Fuentes de las letras
Label1 Cursiva Negrita 12
Caption Sin información Etiqueta vacía
BackColor Naranja Color de la etiqueta
BorderStyle 1 Fixed Single Etiqueta con borde
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 59
Objeto Propiedad Valor de la propiedad Descripción
Nombre dado a la
Name L2
etiqueta
New Times Roman,
Font Fuentes de las letras
Label2 Cursiva Negrita 12
Caption Sin información Etiqueta vacía
BackColor Naranja Color de la etiqueta
BorderStyle 1 Fixed Single Etiqueta con borde
Nombre dado a la
Name L3
etiqueta
New Times Roman,
Font Fuentes de las letras
Label3 Cursiva Negrita 12
Caption Sin información Etiqueta vacía
BackColor Naranja Color de la etiqueta
BorderStyle 1 Fixed Single Etiqueta con borde
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 60
Objeto Propiedad Valor de la propiedad Descripción
Nombre dado a la
Name L4
etiqueta
New Times Roman,
Font Fuentes de las letras
Label4 Cursiva Negrita 12
Caption Sin información Etiqueta vacía
BackColor Naranja Color de la etiqueta
BorderStyle 1 Fixed Single Etiqueta con borde
También se tendrá que modificar las sentencias de impresión en el código de
dicho aplicación, lo que antes se utilizaba con la sentencia Print, para mostrar
los resultados ahora utilizamos las etiqueta así como se muestra a
continuación:
[Link] = "El total de personas es " & CStr(ContEmp)
[Link] = "El porcentaje de vendedores es " & CStr(PorcVend)
[Link] = "El porcentaje de ayudantes es " & CStr(PorcAyud)
[Link] = "El porcentaje de secretarias es " & CStr(PorcSecr)
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 61
Al ejecutar la aplicación el formulario que dará de la siguiente forma:
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 62
Son objetos que le permiten al programador obtener información desde el
teclado o mostrar datos ó resultados. Entre sus propiedades se destacan:
propiedad que nos permite obtener o colocar la tira de
Text
caracteres que se muestra por pantalla.
Name nombre del control, por defecto le asigna text1
Backcolor color del fondo de la caja de texto.
establece el color con se mostrará el texto presentado en el
Forecolor
control.
permite cambiar el tipo, estilo y tamaño de letra a utilizar en
Font
la caja de texto.
Alignment establece la alineación del texto mostrado en la caja de texto.
establece el estilo del borde de la etiqueta. Para dar borde
BorderStyle
seleccione el valor 1 o Fixed.
Locked determina si se puede o no modificar la caja de texto
establece un valor que determina si el objeto puede o no
Enabled
responder a eventos generado por el usuario.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 63
permite que el objeto acepte múltiple líneas. Se debe
Multiline establecer en tiempo de diseño, no en tiempo de ejecución.
Para permitir múltiples líneas se debe colocar en true.
establece un valor que indica si el cuadro de texto tiene barras
de scroll verticales y horizontales. Los valores se establece en
tiempo de diseño y no en tiempo de ejecución. Si toma el valor
Scrollbars
1 se colocará a la caja de texto una barra horizontal , con el
valor 2 una barra vertical, el valor 0 no coloca barras y el valor
3 tanto barras horizontales como verticales.
establece un valor que determina si el objeto esta visible o está
Visible
oculto.
Tag guarda cualquier dato adicional para el programa.
establece el texto mostrado cuando el ratón se sitúa sobre el
Tooltiptext
control.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 64
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 65
Los botones de comando son controles utilizados para activar procedimientos
específicos, ellos responde al evento clic, es decir, cuando hacemos clic sobre
ellos se realiza las instrucciones allí programadas. Entre sus propiedades se
destacan:
Caption es donde se coloca el texto que se muestra por pantalla.
Name nombre del control, por defecto le asigna Command1
Backcolor color del fondo del botón.
establece el color con se mostrará el texto presentado en el
Forecolor
control.
permite cambiar el tipo, estilo y tamaño de letra a utilizar en
Font
el botón.
establece el texto mostrado cuando el ratón se sitúa sobre el
Tooltiptext
control.
establece un valor que determina si el objeto puede o no
Enabled
responder a eventos generado por el usuario
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 66
establece un valor que determina si el objeto esta visible o
Visible
está oculto.
establece el tipo de puntero del ratón mostrado al pasar por
MousePointer
encima del objeto.
devuelve o establece la apariencia del control, ya sea
Style estándar o gráfica, para poder cambiar el color del fondo del
botón esta propiedad debe estar en modo gráfico.
Tag guarda cualquier dato adicional para el programa.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 67
Aquí se muestran algunas de los posibles uso de los controles CommandButton,
como podemos observar le podemos cambiar el color de fondo, el tipo de
letra, pueden tener imágenes, etc.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 68
Ahora vamos a modificar el ejemplo que hemos estado realizando, y le vamos
a incluir Tres (3) Botones, un botón Calcular, otro Imprimir y otro Salir.
Nuestro Formulario Form1, debe quedar de la siguiente forma:
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 69
Realicemos los siguientes en el área de código. Luego de haber insertado
Los 3 botones vamos a realizar los siguientes cambios:
1.- Hagamos doble clic en el botón Calcular y va a parecer un procedimiento
como el siguiente: Private Sub Calcular_Click(), allí vamos a colocar las
instrucciones de entrada y el proceso que se encuentra en el Form_Load,
de la siguiente forma:
Private Sub Calcular_Click()
[Link] = True
'Entradas del Programa
NumVend = InputBox("Introduzca el número de vendedores ")
NumAyud = InputBox("Introduzca el número de ayudantes ")
NumSecr = InputBox("Introduzca el número de secretarias ")
'Proceso
ContEmp = NumVend + NumSecr + NumAyud
PorcVend = NumVend * 100 / ContEmp
PorcAyud = NumAyud * 100 / ContEmp
PorcSecr = NumSecr * 100 / ContEmp
End Sub
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 70
2.- Hagamos doble clic en el botón Imprimir y va a parecer un procedimiento
como el siguiente: Private Sub Imprimir_Click(), allí vamos a colocar las
instrucciones de salida que se encontraban en el Form_Load,
de la siguiente forma:
Private Sub Imprimir_Click()
' Instrucciones que me permiten colocar visible las etiquetas
[Link] = True
[Link] = True
[Link] = True
[Link] = True
' La salida se muestra en la etiqueta a través de la propiedad Caption
[Link] = "El total de personas es " & CStr(ContEmp)
[Link] = "El porcentaje de vendedores es " & CStr(PorcVend) & " %"
[Link] = "El porcentaje de ayudantes es " & CStr(PorcAyud) & " %"
[Link] = "El porcentaje de secretarias es " & CStr(PorcSecr) & " %"
End Sub
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 71
3.- Hagamos doble clic en el botón Salir y va a parecer un procedimiento
como el siguiente: Private Sub Salir_Click(), allí vamos a colocar la siguiente
Instrucción:
Private Sub Salir_Click()
' Instrucción que permite finalizar el programa
End
End Sub
4.- Nuestro procedimiento Private Sub Form_Load(), debe quedar de la
siguiente forma:
Private Sub Form_Load()
' Instrucción que me permite Desactivar el Botón Imprimir
[Link] = False
' Instrucciones que me permiten colocar Invisible las etiquetas
[Link] = False
[Link] = False
[Link] = False
[Link] = False
End Sub
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 72
5.- Se preguntarán donde debemos colocar la definición de las variables??
Para eso vamos a utilizar el comienzo de área de Código y vamos a tipear
los siguiente:
Option Explicit
' Declaración de variables Globales
Dim NumVend As Integer, NumAyud As Integer, NumSecr As Integer
Dim ContEmp As Integer, PorcVend As Single, PorcSecr As Single
Dim PorcAyud As Single
Realizamos la declaración de variables fuera de todos los procedimientos
para que nuestras variables sean de tipo Globales, es decir, si las declaramos
en esta área las podemos utilizar en todos los procedimientos del formulario
Form1.
Vemos ahora como funciona nuestro proyecto en Microsoft Visual Basic 6.0
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 73
Son objetos que presentan una serie de opciones en forma vertical en una sola
columna. Cuando el número de elementos supera la cantidad de ítems mostrados
en el combo, aparece automáticamente la barra de desplazamiento. Entre sus
propiedades se destacan:
es donde se coloca los elementos que se muestra por pantalla o
List
los que se extraerán.
Name nombre del control, por defecto le asigna Combo1
Backcolor color del fondo de la lista.
establece el color con se mostrará el texto presentado en el
Forecolor
control.
permite cambiar el tipo, estilo y tamaño de letra a utilizar en
Font
la lista.
determina el tipo de control y el comportamiento de su parte
Style
del cuadro de lista
Text estable el texto mostrado en el control
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 74
Tooltiptext establece el texto mostrado cuando el ratón se sitúa sobre el
control.
Enabled establece un valor que determina si el objeto puede o no
responder a eventos generado por el usuario.
Visible establece un valor que determina si el objeto esta visible o
está oculto
MousePointer establece el tipo de puntero del ratón mostrado al pasar por
encima del objeto.
Sorted indica si los elementos se ordenan automáticamente en forma
alfabética.
Locked determina si el control puede ser modificado
Tag guarda cualquier dato adicional para el programa.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 75
Son objetos que presenta una serie de opciones en forma vertical en una sola
columna por defecto, pero puede contener más columnas. Cuando el número de
elementos supera la cantidad de ítems mostrados en la lista, aparecen
automáticamente las barras de desplazamiento. Entre sus propiedades se tiene:
es donde se coloca los elementos que se muestra por pantalla o
List
los que se extraerán.
Name nombre del control, por defecto le asigna List1
Backcolor color del fondo de la lista.
establece el color con se mostrará el texto presentado en el
Forecolor
control.
permite cambiar el tipo, estilo y tamaño de letra a utilizar en
Font
la lista.
establece un valor que determina si la lista tiene una sola
Columns
columna (Valor 0) o varias columnas valor mayor que cero.
establece un valor que determina si el usuario puede o no
MultiSelect
realizar múltiples selecciones en la lista.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 76
establece el texto mostrado cuando el ratón se sitúa sobre el
Tooltiptext
control.
establece un valor que determina si el objeto puede o no
Enabled
responder a eventos generado por el usuario.
establece un valor que determina si el objeto esta visible o
Visible
está oculto
establece el tipo de puntero del ratón mostrado al pasar por
MousePointer
encima del objeto.
indica si los elementos se ordenan automáticamente en forma
Sorted
alfabética.
Tag guarda cualquier dato adicional para el programa.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 77
AddItem: agrega elementos a la lista o al combo
[Link] elemento
Donde
lista: es el nombre de la lista o del combo.
Elemento: es la cadena de caracteres que se agrega a la lista o al combo
RemoveItem: quita algún elemento de la lista o del combo.
[Link] N
Donde
lista: es una lista o un combo
N es un número que especifica el elemento a ser eliminado. El primer
elemento se consigue en la posición 0.
Clear: quita todos los elementos de la lista o el combo.
[Link]
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 78
ListIndex: permite conocer la posición que ocupa un elemento
seleccionado
n= [Link]
Donde
n es el valor devuelto por ListIndex
Lista: es el nombre de la lista o del combo.
NewIndex: permite conocer el índice del último elemento agregado a la
lista
n= [Link]
Donde
n es el valor devuelto por NewIndex
Lista: es el nombre de la lista o del combo
ListCount: permite conocer el número elementos en la lista o en el combo
n= [Link]
Donde
n es el valor devuelto por ListCount
Lista: es el nombre de la lista o del combo
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 79
OptionButton: permite elegir una sola opción de un grupo de opciones dadas.
CheckBox: permite elegir una o más opciones de un grupo de opciones dadas.
Caption es donde se coloca el texto que se muestra por pantalla.
Name nombre del control, por defecto le asigna Check1 ó Option1
Backcolor permite establecer el color del fondo.
establece el color con se mostrará el texto presentado en el
Forecolor
control.
permite cambiar el tipo, estilo y tamaño de letra a utilizar el
Font
control.
establece la alineación del botón de opción o de la caja de
Alignment
chequeo
establece el texto mostrado cuando el ratón se sitúa sobre el
Tooltiptext
control.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 80
establece un valor que determina si el objeto puede o no
Enabled
responder a eventos generado por el usuario.
establece un valor que determina si el objeto esta visible o
Visible
está oculto
establece el tipo de puntero del ratón mostrado al pasar por
MousePointer
encima del objeto.
Tag guarda cualquier dato adicional para el programa.
establece el valor del objeto. Cuando vale uno la casilla de
Value verificación o el botón de opciones esta activado, cuando vale
0 esta desactivada, cuando no esta disponible su valor es dos.
Los botones de opción o se pueden colocar en un grupo directamente en el
formulario o dentro de un marco (frame) o cuadro de imágenes (image). Para
ello se debe crear primero el grupo independiente, es decir colocar primero
el marco (frame) donde luego se colocarán los botones de opciones o cajas de
verificación.
18/04/2021 Ing. Johanna Páez S. - Unidad VI y V 81