Estructuras de control y comandos de programación de macros en Excel
Como crear una macro
1. Tras activar la pestaña de programación, tendrás la siguiente pantalla.
2. En la parte superior izquierda podrás ver el icono de macro. Después de dar clic, pedirá que pongas un
nombre a tu macro
3. Enseguida de colocar un nombre, presiona en Crear
1
4. Accederás a la pantalla de programación de macros.
5. Aquí ejecutaras los distintos comandos necesarios. Por otro lado, también puedes grabar primero la
macro para tener algo de código
2
6. Donde pide nombre de macro y luego la grabamos.
7. Da clic en detener macro y la macro queda grabada
8. Presiona en modificar, seleccionando la macro y entra nuevamente al código.
9. Aquí ya podrás seguir agregando código o modificando el que se creó con la grabación de macros.
3
Estructuras de programación:
Sub rutinas
Son estructuras que nos permiten crear un código que reutilizaremos a lo largo del algoritmo
Ejemplo:
//Nombre de la sub
Sub Fechaactual()
//le indicamos que va una fecha
Activecell.value=date
//formato de mes on año
Activecell.numberformat=”mmmm d, yyyy”
//activamos negritas
Activecell.font.bold=true
//permitimos que el tamaño de columnas se autocomplete
Activecell.columns.autofit
End sub
Funciones
Son estructuras fuera del código principal que nos permite enviar valores para ser operados y luego
regresar un resultado
Ejemplo:
Function rcStrDomain(url As String) As String
'Comprobamos si el parámetro url es verdaderamente una url
If Left(url, 4) Like "http*" Then
'Extraemos todo lo que va después de //
url = Mid(url, InStr(url, "//") + 2)
Else
'Si no es una url, lo introducimos en la celda
rcStrDomain = "No es una url"
Exit Function
End If
'Comprobamos si el subdominio contiene las tres típicas www (o variaciones)
If Left(url, 4) Like "[Ww][Ww][Ww0-9]." Then
'De ser así, extraemos lo que va después de www (o variaciones)
url = Mid(url, 5)
End If
'Finalmente, la función devuelve la cadena de texto hasta que se encuentra el primer /.
rcStrDomain = Split(url, "/")(0)
End Function
4
Condicionales
Son estructuras de control que nos permiten la toma de decisiones dentro el Código
La sentencia If simple
If condición
Then sentencias
End If
La sentencias Else
If condición
Then sentencias1
Else sentencias2
End If
La sentencia ElseIf
If condición1
Then sentencias1
ElseIf condición2
Then sentencias2
Else sentencias3
End If
La sentencia Select Case
Select Case expresión
Case expresión1 sentencias1
Case expresión2 Sentencias2………
Case expresiónN sentenciasN
Case Else sentencias para la alternativa no coincidente con ninguna anterior
End Select
Bucles
Serie de estructuras de control que nos permiten regresar a una línea de código anterior y repetir cierta
cantidad de instrucciones
Bucle While … Wend
'Mientras se cumpla una condición
While condición 'Ejecuta una acción sentencias
Wend '
Ejemplo Dim Contador Contador = 0 ' Valor inicial.
While Contador < 20 ' Mientras sea menor de 20.
Contador = Contador + 1 ' Incrementa su valor +1.
Wend ' El bucle termina cuando el Contador > 19.
MsgBox Contador ' Mensaje con el valor de Contador, igual a 20.
Bucle Do … Loop
'Ejecuta una acción
5
Do Sentencias'
Mientras se cumpla una condición
Loop While/Until condición 'Ejemplo Dim index As Integer = 0
Do While index <= 10 'Mientras el valor sea menor igual que 10 Debug.
Write(index.ToString & " ")
'Convierte el valor a string y añade un espacio en blanco index += 1 '
Aumenta el valor del contador +1
Loop Debug. WriteLine("")' Resultado: 0 1 2 3 4 5 6 7 8 9 10
Bucle For … Next
'Repite una acción un nº limitado de veces.
Desde un valor hasta otro.
For variable = expresión1 To expresión2 [Step expresión3]'
Ejecuta una acción
SentenciasNext variable
Objetos
En Excel se tienen una serie de elementos que representan todas las herramientas de la misma aplicación,
los más importantes son:
• EL libro, conocido como Workbook
• La hoja, conocida como Worksheet
• Los rangos, que representan conjuntos de elementos, como celdas, hojas, graficas... range
• Las celdas, conocidas como Cells
Desplazamientos
Son comandos que nos permiten movernos en la cuadricula de Excel
• Down, hacia abajo
• Up, Hacia arriba
• ToRight, hacia la derecha
• ToLeft, Hacia la izquierda
Finalmente hay que tomar en cuenta que algunos comandos o estructuras pueden varias entre las
diferentes versiones de Excel.