Vb en office



Descargar 129.45 Kb.
Fecha de conversión12.04.2017
Tamaño129.45 Kb.

Ejercicios resueltos básicos y de estructuras de decisión en Visual Basic 


1) Escribir un programa que agregue un valor de la suma

Se debe crear:



3 Label (En el tercer Label cambia el BorderStyle de 0 - None a 1 - Fixed Single)

1 TextBox

1 CommandButton

Debe quedar así



http://2.bp.blogspot.com/-nhre9mbxask/usafkgcf3pi/aaaaaaaaams/q8s5dveaivy/s320/falkreakth.blogspot.com.png

Hay dos formas de hacerlo: Forma simple(Nivel: Facil) Forma simple(Nivel: Normal). Verán porque.



Forma simple(Nivel: Facil): El problema de la forma simple es que al agregar el primer valor y al darle sumar nos agrega el primer valor ingresado, en vez de esperar los otros valores que se van a sumar. Por ejemplo:
1) Si ingreso 1 en lugar de quedar el Label3 en blanco te muestra el primer valor ingresado, en vez de quedarse en blanco el Label3, para poder ingresar el siguiente valor sumarlo y mostrar el resultado. Pruebenlo y veran porque.


Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)
Option Explicit
Dim Suma As Double
_____________________________________________________________________

Private Sub Command1_Click()
    Dim Valor As Double
    Valor = Text1
    Suma = Suma + Valor
    Label3 = Suma
End Sub

Forma simple(Nivel: Normal): Esta es la forma en que vemos si se ha ingresado datos o no en el TextBox usando condicionales, y también nos ayuda a sumar de forma cómoda como las calculadora de Windows.

Debe quedarte así:



http://1.bp.blogspot.com/-g-intfxq2kg/usaf5fdiu0i/aaaaaaaaam0/0x5fnprmx6o/s320/falkreakth.blogspot.com.png

Aquí está el código (Darle doble clíck al CommandButton e introducir lo siguiente)


Dim Operacion As String
Dim Inicio As Boolean
Dim PrimerValor, ValorSiguiente, Suma

    

Private Sub Command1_Click()
PrimerValor = Val(Text1.Text)
Text1.Text = ""
Inicio = False
Operacion = "Suma"
End Sub

Private Sub Command2_Click()
Text1.Text = ""
Label3 = ""
ValorSiguiente = 0
Inicio = False
End Sub

Private Sub Command3_Click()
If Text1 = "" Then
    MsgBox "Usted no ha ingresado su numero"
End If
ValorSiguiente = Text1.Text
    Select Case Operacion
        Case "Suma"
            Suma = PrimerValor + ValorSiguiente
            Label3 = Suma
    End Select
End Sub





2) Escribir un programa que lea 5 números enteros y escriba la media aritmética (Promedio) de los mismos





Se hace de tres maneras





Primera manera





Se debe crear:





5 TextBox





7 Label (En el último Label cambia el BorderStyle de 0 - None a 1 - Fixed Single)





1 CommandButton





Debe quedarte así





http://4.bp.blogspot.com/-qi5jsdrvdhi/usakoqr69ii/aaaaaaaaam8/gsoimtokfus/s320/falkreakth.blogspot.com.png









Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)





Private Sub Command1_Click()

Dim PrimerValor As Integer, SegundoValor As Integer, TercerValor As Integer, CuartoValor As Integer, QuintoValor As Integer





PrimerValor = Text1

SegundoValor = Text2

TercerValor = Text3

CuartoValor = Text4

QuintoValor = Text5





Label7 = (PrimerValor + SegundoValor + TercerValor + CuartoValor + QuintoValor) /5





End Sub




Segunda manera:





Esta manera es para que cuando se nos olvide poner el algún valor en cualquierTextBox, nos muestre un mensaje de que falta ingresar un valor en tal TextBox





Se debe crear:





5 TextBox





7 Label (En el último Label cambia el BorderStyle de 0 - None a 1 - Fixed Single)





1 CommandButton





Debe quedarte así





http://4.bp.blogspot.com/-qi5jsdrvdhi/usakoqr69ii/aaaaaaaaam8/gsoimtokfus/s320/falkreakth.blogspot.com.png









Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)




Private Sub Command1_Click()





Dim PrimerValor As Integer, SegundoValor As Integer, TercerValor As Integer, CuartoValor As Integer, QuintoValor As Integer





PrimerValor = Val(Text1)

SegundoValor = Val(Text2)

TercerValor = Val(Text3)

CuartoValor = Val(Text4)

QuintoValor = Val(Text5)





If Text1 = "" Then

    MsgBox "Falta el un valor en la casilla 1"

ElseIf Text2 = "" Then

    MsgBox "Falta el un valor en la casilla 2"

ElseIf Text3 = "" Then

    MsgBox "Falta el un valor en la casilla 3"

ElseIf Text4 = "" Then

    MsgBox "Falta el un valor en la casilla 4"

ElseIf Text5 = "" Then

    MsgBox "Falta el un valor en la casilla 5"

Else

Label7 = (PrimerValor + SegundoValor + TercerValor + CuartoValor + QuintoValor) / 5

End If





End Sub
Tercera forma:
Para eso debemos crear una "Matriz de Controles", lo que significa que debemos crear 9 veces un TEXT1

Como se muestra gráficamente.



Creamos un 
TextBox

http://3.bp.blogspot.com/-006bp_qzzrm/umkojz9cmzi/aaaaaaaaaf4/y6lr11crbzq/s320/1.jpg
Le damos click derecho del Mouse y nos saldrá el siguiente cuadro lo cual sale una opción que dice copiar.
http://1.bp.blogspot.com/-btsnuv4opcw/umkotbnolyi/aaaaaaaaaga/9so8_bwpeve/s400/1.jpg
Ahora acercamos el cursor en el espacio del formulario le damos click derecho y pegar. O lo más fácil apretamos la tecla Ctrl y la tecla V las dos (teclas a la vez)
http://3.bp.blogspot.com/-r28kltbac-u/umkpqzepcxi/aaaaaaaaagi/ri8eswsrivg/s400/1.jpg

Luego de haberle dado pegar te va a salir un cuadro que te dice lo siguiente:

"Ya existe un control llamado Text1 ¿Deseas crear una matriz de controles?"
Les das click en SI o en Aceptar 
Creas 5 Text1
7 Labels
un CommandButton
El formulario debe quedarte así

http://4.bp.blogspot.com/-qi5jsdrvdhi/usakoqr69ii/aaaaaaaaam8/gsoimtokfus/s320/falkreakth.blogspot.com.png
Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)





Private Sub Command1_Click()





Dim PrimerValor As Integer, SegundoValor As Integer, TercerValor As Integer, CuartoValor As Integer, QuintoValor As Integer





PrimerValor = Val(Text1(0))

SegundoValor = Val(Text1(1))

TercerValor = Val(Text1(2))

CuartoValor = Val(Text1(3))

QuintoValor = Val(Text1(4))





If Text1(1) = "" Then

    MsgBox "Falta el un valor en la casilla 1"

ElseIf Text1(2) = "" Then

    MsgBox "Falta el un valor en la casilla 2"

ElseIf Text1(3) = "" Then

    MsgBox "Falta el un valor en la casilla 3"

ElseIf Text1(4) = "" Then

    MsgBox "Falta el un valor en la casilla 4"

ElseIf Text1(5) = "" Then

    MsgBox "Falta el un valor en la casilla 5"

Else

Label7 = (PrimerValor + SegundoValor + TercerValor + CuartoValor + QuintoValor) /5

End If





End Sub





3) El alquiler de un vehículo cuesta 70.000 bolívares por día más 750 bolívares por cada kilómetro recorrido. Escribir un programa que lea por teclado el número dedías en alquiler y el números de kilómetros recorridos y muestre el monto total que se debe pagar.





  Se debe crear:
2 TextBox
Label (En el último Label cambia el BorderStyle de 0 - None a 1 - Fixed Single)
1 CommandButton
Debe quedarte así
http://3.bp.blogspot.com/-blzmysev0z0/usa1qivczyi/aaaaaaaaanq/dgughhn_mis/s320/falkreakth.blogspot.com.png
Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)





Private Sub Command1_Click()

    'Declaramos las constantes

    Const AlquilerDelAuto = 70000

    Const KilometrosRecorrido = 750

    

    Dim DiasDeAlquiler As Integer

    Dim KilometrosRecorridos As Integer

    

    DiasDeAlquiler = Val(Text1)

    Kilometros = Val(Text2)

    

    If Text1 = "" Then

        MsgBox "No has ingresado los dias"

    ElseIf Text2 = "" Then



        MsgBox "No has ingresado los kilometros"

    Else



        Label3 = (DiasDeAlquiler * AlquilerDelAuto) + (KilometrosRecorrido * Kilometros)

    End If

    


    

End Sub





4) Escribir un programa que lea por teclado un numero entero, el cual representa un monto en bolívares y muestre cuantos billetes de 50.00020.00010.0005.000,2.000 y 1.000 y cuantas monedas de 5001005020105 y 1 constituyen esa cantidad.





Aquí usaremos InputBox





 Se debe crear:

13 TextBox
13 Label 
CommandButton
Debe quedarte así
http://3.bp.blogspot.com/-t3u8s0swola/usbhhqamm1i/aaaaaaaaany/yuwvyrt09xy/s320/falkreakth.blogspot.com.png
Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)





Option Explicit

Private Sub Command1_Click()

    Dim Monto As Long

    

      

    'Ingresamos los datos

    Monto = InputBox("Ingrese su monto")

    

    Text1 = Monto \ 50000

    Text2 = Monto \ 20000

    Text3 = Monto \ 10000

    Text4 = Monto \ 5000

    Text5 = Monto \ 2000

    Text6 = Monto \ 1000

    Text7 = Monto \ 500

    Text8 = Monto \ 100

    Text9 = Monto \ 50

    Text10 = Monto \ 20

    Text11 = Monto \ 10

    Text12 = Monto \ 5

    Text13 = Monto \ 1

    

    

    

End Sub





5) Escribir un programa que solicite al usuario la introducción de un número de tresdígitos y que lo imprima en orden inverso. Ejemplo: Para una entrada de 695,la salida deberá ser 596.




 Se debe crear:
TextBox
2 Label 
1 CommandButton
Debe quedarte así

http://2.bp.blogspot.com/-llsetbvzy_g/usbq2b0akni/aaaaaaaaans/evomci8gh2w/s320/falkreakth.blogspot.com.png
Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)





Private Sub Command1_Click()

    

    Dim Numero As Integer

    Dim CalculoUno As Integer, RespuestaUno As Integer

    Dim CalculoDos As Integer, RespuestaDos As Integer

    

    Numero = Text1

        

    CalculoUno = Numero \ 100

    RespuestaUno = Numero Mod 100

    

    CalculoDos = RespuestaUno \ 10

    RespuestaDos = RespuestaUno Mod 10

    

    Text2 = RespuestaDos & CalculoDos & CalculoUno

        

End Sub





6) Dados tres valores enteros, los cuales representan las longitudes de los lados de un triángulo, escribir un programa que determine si el triángulo es isósceles, equilátero o escaleno.





Se debe crear:





4 Label





TextBox





1 CommandButton





Debe quedar así
http://1.bp.blogspot.com/-nioljvnsxjw/usbt0p9zovi/aaaaaaaaan0/flp1alnqxqk/s320/falkreakth.blogspot.com.png

Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)





Private Sub Command1_Click()

    Dim LadoUno As Integer, LadoDos As Integer, LadoTres As Integer

    

    LadoUno = Text1



    LadoDos = Text2

    LadoTres = Text3

    

    If LadoUno = LadoDos And LadoDos = LadoTres Then



        Label4 = "Es equilátero"

    ElseIf LadoUno = LadoDos Or LadoUno = LadoTres Or LadoDos = LadoTres OrLadoDos = LadoUno Or LadoTres = LadoUno Or LadoTres = LadoDos Then

        Label4 = "Isosceles"

    Else

        Label4 = "Escaleno"

    End If



End Sub
7) Escribir un programa que dada la hora en HH:MM:SS calcule y muestre la hora un segundo después.
Donde:
HH es la hora
MM son los minutos
SS son los segundos
Se debe crear:
3 TextBox
3 CommandButton
Debe quedar así
http://2.bp.blogspot.com/-if-xtnelzpk/usbut9y_-xi/aaaaaaaaan8/rcicab8alvg/s1600/falkreakth.blogspot.com.png
Aquí esta el código (Darle doble clíck al CommandButton e introducir lo siguiente)





Private Sub Command3_Click()

VariableHora = Text1

VariableMinutos = Text2

VariableSegundos = Text3

VariableSegundos = VariableSegundos + 1

If VariableSegundos = 60 Then

    VariableSegundos = 0

    VariableMinutos = VariableMinutos + 1

    If VariableMinutos = 60 Then

        VariableMinutos = 0

        VariableHora = VariableHora + 1

        If VariableHora > 12 Then

            VariableHora = 1

        End If

    End If



End If

Text1 = VariableHora

Text2 = VariableMinutos

Text3 = VariableSegundos

End Sub

_____________________________________

Private Sub Command1_Click()

Text1 = ""

Text2 = ""

Text3 = ""





End Sub

_______________________________

Private Sub Command2_Click()

End

End Sub

_________________________________





NOTA:





A) El CommandButton3 es el botón Hora
B) El CommandButton1 es el botón Borrar


C)
 El CommandButton2 es el botón Salir


La base de datos está protegida por derechos de autor ©bazica.org 2016
enviar mensaje

    Página principal