Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Clase 04 - Macro1 PDF
Clase 04 - Macro1 PDF
Sintaxis
[Sentencias]
NEXT
Para ello requiere de una variable que funciona a modo de índice (VarIndice) el cual empieza en
un primer valor (ValInit), por cada iteración que se realiza, se incrementa en una determinada
cantidad (Incr), hasta llegar al extremo (ValFinal), después del cual, continua con la siguiente
sentencia, debajo de Next. Si el incremento es la unidad, no se usa STEP Incr
Ejemplo
Sub Suma01()
Dim I As Variant
Dim Suma As Double
Suma = 0
xx=inputbox(“Ingrese un numero”,”Suma de Cuadrados”)
For I = 1 To xx
Suma = Suma + I ^ 2
Next
MsgBox("La suma de los cuadrados de ” & xx & “ números es: " & Suma)
End Sub
Ejemplo
Se desea hacer una macro para cambiar texto a mayúsculas o minúsculas de cualquier rango de
la hoja de trabajo
Sub mayusculas()
Set rango = Selection
For Each cell In rango
cell.Value = UCase(cell.Value)
Next
End Sub
Ejemplo
El siguiente ejemplo permite ingresar una serie de números hasta presionar <Enter>, en cuyo caso
imprime la suma de todos ello.
Sub Suma()
Dim Suma As Integer
Ix = Val(InputBox("Ingeresa un número; para terminar, presiona <Enter>", "INGRESE
NUMEROS", , 2000, 6000))
Suma = 0
Fila = 2
While Ix > 0
Suma = Suma + Ix
Fila = Fila + 1
Ix = Val(InputBox("Ingeresa un número; para terminar, presiona <Enter>", "INGRESE
NUMEROS", , 2000, 6000))
Wend
MsgBox ("La suma obtenida es = " & Suma)
End Sub
SENTENCIA DO … LOOP UNTIL
Sintaxis:
DO
[ Sentencias ]
Como decíamos, Expresión_de_Comparación debe contener una relación lógica capaz de ser
verdadera o falsa.
Observación:
Tome nota de la diferencia en el uso de la instrucción FOR, WHILE y DO. El uso de cada una de
ellas es diferente y se emplea en diferentes contextos.
La instrucción WHILE se emplea para repetir el bucle siempre que la condición se cumpla.
La sentencia DO es lo mismo que WHILE, excepto que While pregunta antes de ejecutar el bucle,
mientras que Do ejecuta el bucle y luego verifica la condición.
Ejemplo
Como se puede apreciar, sólo cambiamos la instrucción While y la condición la hemos pasado al
final, luego de leer el código de operación para una siguiente operación.
Sub Calc()
Dim Op As Double
Op = Val(InputBox("Ingrese un número"))
Code = InputBox("Codigo de operación")
Do
Select Case Code
Case "+"
Op = Op + Val(InputBox("Digite el número"))
Case "-"
Op = Op - Val(InputBox("Digite el número"))
Case "*"
Op = Op * Val(InputBox("Digite el número"))
Case "/"
Op = Op / Val(InputBox("Digite el número"))
Case "^"
Op = Op ^ Val(InputBox("Digite el número"))
Case Else
MsgBox ("Código inválido. Reinicie todo...")
End
End Select
Code = InputBox("Código de operación")
Loop Until Code = "="
MsgBox ("Resultado = " & Op)
End Sub