Presentacion 2 estructuras de control web renee gonzalez
-
Upload
renee-gonzalez -
Category
Education
-
view
2.466 -
download
0
Transcript of Presentacion 2 estructuras de control web renee gonzalez
Taller de Macros en EXCEL. VBA
Clase N º 2Estructuras de Control
Por: Ing. Reneé González MartínezC.I.: 11.888.960
Prof. Universidad del ZuliaCorreo: [email protected]
Maracaibo, Septiembre 2010
Objetivos Especificos de la clase
Resolver un problema algoritmico usando el entorno
de VBA para Excel.
Diferenciar las estructuras de control : If, Case, For,
While, a partir de los ejercicios realizados.
¿Cuál significado le otorga Ud a las sig. palabras?
1. Sub ()
…
End Sub
2. Private Sub cmdBoton_click()
…
End Sub
¿Cuál significado le otorga Ud a las sig. palabras?
3. Cells (2 ,”A” ).Select
Selection.ClearContents
4. Range (Cells(2 ,”A” ), Cells(3 ,”B” )).Select
Selection.ClearContents
5. MsgBox “Hola”
6. Sheets (“ ComoMeLLamo“).Select
7. ListBox1.ListIndex=0
8. ComboBox1.ListIndex=2
9. Dim X as Integer
Dim Y as Double
Dim Z as String
¿Cuál significado le otorga Ud a las sig. palabras?
Se requiere una aplicación que realice la conversión de dólares a bsF.
La aplicación debe presentar la opción al usuario de escoger la paridad con la que desea trabajar:
Paridad Oficial 2,2 BsF/$, Paridad Oficial 4,3 BsF/$ y Paridad Paralela a 8,4 BsF/$.
La entrada de la aplicación es cantidad de dinero en Dólares.
Ejemplo de un Requerimiento
El concepto básico de flujo de control de un programa es un flujo
secuencial, en el cual las instrucciones se siguen en forma lineal, es
decir, se ejecutan de arriba hacia abajo.
Flujo de Control de un Programa
„Ejemplo
Sub Limpiar()
Range(Cells(7, 5), Cells(7, 3)).Select
Selection.ClearContents
End Sub
Son estructuras que permiten modificar el flujo de ejecución de las
instrucciones de un algoritmo o programa.
Sentencias de control
If - thenIf - then - else
While - wend
Todas las estructuras de control tienen un único punto de entrada
y un único punto de salida
Estructuras selectivas
Una instrucción selectiva evalúa una condición y de acuerdo al valor
de la condición puede ser ejecutada un grupo de instrucciones o no,
para posteriormente seguir el flujo del programa.
Existen Estructuras Selectivas: Simples, Dobles y Múltiples
Estructura de selección simple (If – then)
If condición then
Instrucciones 1
End if
Conocida como “Si Condicional Simple”, en la cual, la condición
es una expresión lógica (Verdadero o Falso), se evalúa y de ser
cierta se ejecuta un grupo de instrucciones.
En este caso,
“Instrucciones 1” es ejecutada sólo si la condición es verdadera.
Instrucciones2
Sub Opcion()
If OptDecExp = True ThenSheets("Exponencial").Select
End If
End Sub
Estructura de selección doble (If – then – else)
Según el cumplimiento de una condición, se ejecuta un grupo de instrucciones
u otro grupo, mutuamente excluyentes.
If condición then
Instrucciones 1
else
Instrucciones 2
End if
La condición es una variable booleana
(lógica). Si esta condición es cierta se
ejecuta Instrucciones1, si no es así, entonces
se ejecuta Instrucciones2.
Instrucciones3
Estructura de selección doble (If – then – else)
Según el cumplimiento de una condición, se ejecuta un grupo de instrucciones
u otro grupo, mutuamente excluyentes.
If condición then
Instrucciones 1
else
Instrucciones 2
End if
Instrucciones3
Sub prueba()
If variable=10 then
msgbox “Igual”
else
msgbox “Diferente”
End if
End sub
Estructura de selección múltiple (Select Case)En este caso hay una variable cuyo valor es comparado con todos los
casos presentes, si en algún caso coinciden ambos valores, se
ejecutarán las instrucciones correspondientes a ese caso.
Select Case variable
Case 1:
Acción 1
Case 2:
Acción 2
Case 3:
Acción 3
…
Case n:
Acción n
End Select
variable
Estructura de selección múltiple (Select Case)En este caso hay una variable cuyo valor es comparado con todos los
casos presentes, si en algún caso coinciden ambos valores, se
ejecutarán las instrucciones correspondientes a ese caso.
Select Case variable
Case 1:
Acción 1
Case 2:
Acción 2
Case 3:
Acción 3
…
Case n:
Acción n
End Select
Private Sub cmdOk_Click()
Select Case ListBox1.ListIndex
Case 0
MsgBox "PEMEX"
Case 1
MsgBox "ECOPETROL"
Case 2
MsgBox "PDVSA"
Case 3
MsgBox "CHEVRON"
End Select
End Sub
Son estructuras que permiten modificar el flujo de ejecución de las
instrucciones de un algoritmo o programa, representando ciclos o
bucles.
Sentencias de control iterativas
While - wend
While condiciónInstrucciones
Wend
Son estructuras que permiten modificar el flujo de ejecución de las
instrucciones de un algoritmo o programa, representando ciclos o
bucles.
Sentencias de control iterativas
While - wend
While condiciónInstrucciones
Wend
Private sub cmdOk_click()i = 1While i <= 3
Cells(i, 1).Value = ii = i + 1
WendEnd Sub
Sentencias de control iterativas
Índice <= Valor final
Verdadero
Falso
For - Next
Sentencias de control iterativas
For i = 1 to N Step Aumento
Instrucciones
Next i
Private Sub cmdFor_Click()
For i = 1 To 3 Step 1
Cells(i, 5).Value = i
Next i
End Sub
For - Next
Son estructuras que permiten modificar el flujo de ejecución de las
instrucciones de un algoritmo o programa, representando ciclos o
bucles.
Sentencias de control iterativas
DoAcciones (Instrucciones)
Loop While condición
Private Sub cmdOk_Click()i = 1Do
i = i + 1MsgBox i
Loop While i <= 3End Sub
Do - While
verdadero
falso
Estructura s Repetitivas: Mientras (While) y Para (For)
Private Sub cmdWhile_Click()i = 1
While i <= 3
Cells(i, 1).Value = ii = i + 1
WendEnd Sub
Private Sub cmdFor_Click()For i = 1 To 3
Cells(i, 5).Value = i
Next iEnd Sub
Ejercicio: Construya la siguiente interfaz (lado izquierdo) y codifique los botones (lado
derecho)
Estructura s Repetitivas: Mientras (While) y Para (For)
Private Sub cmdLimpiar_Click()
For i = 1 To 3
Cells(i, 5).ClearContentsCells(i, 1).ClearContents
Next i
End Sub
Ejercicio: Construya la siguiente interfaz (lado izquierdo) y codifique los botones (lado
derecho)
Para analizar luego de clases…
Estructura s Repetitivas: Mientras (While) y Para (For)
Private Sub cmdConteo_Click()Dim i As Integer'cuento filas con informacióni = 0Range("A1").SelectWhile (Selection <> "")
ActiveCell.Offset(1, 0).Selecti = i + 1
Wend
MsgBox "Total de filas con información " &i - 1
For j = 1 To i - 1
MsgBox Cells(j + 1, 1)Next j
End Sub
Ejercicio: Construya la siguiente interfaz (lado izquierdo) y codifique los botones (lado derecho)
Private Sub cmdConteo_Click()Dim i As Integer'cuento filas con informacióni = 0Range("A1").SelectWhile (Selection <> "")
ActiveCell.Offset(1, 0).Selecti = i + 1
WendMsgBox "Total de filas con información " & i - 1
For j = 1 To i - 1
MsgBox "Elemento " & j & " " & Cells(j + 1, 1)Next j
End Sub
Estructuras Repetitivas: Mientras (While) y Para (For)
Ejercicio: Construya la siguiente interfaz (lado izquierdo) y codifique los botones (lado derecho)
Próxima Clase
Operadores Lógicos y Operadores relacionales.
Traer algún problema que pueda ser resuelto en Macro
para conversarlo en la clase
Macros incorporando comando de Crystal Ball.