logo ciberaula
numero telefono

>Contáctenos

fondo ciberaula
Portada Cursos de Macros Cursos de Excel Macros Básico

Valore esta página:



Votos: 3.2/5 (3533 votos)

Office Excel
Cursos de Macros en Excel con VBA nivel básico online

¿A quién va dirigido?

Profesionales que poseen conocimientos avanzados de Excel, deseen dar un paso más y quieran aprender a automatizar todas aquellas tareas repetitivas o tediosas que realizan frecuentemente.
En concreto va dirigido a perfiles administrativos, contables, financieros o profesionales de cualquier departamento de TI y, en general, a todos aquellos que trabajan con Excel frecuentemente.
Curso válido para versiones de Excel 2010, 2013 y 2016

Descripción

Curso en el que aprenderás a programar Macros en Excel con VBA desde cero.

Aprenderás a:

  • Utilizar el Editor de Visual Basic, crear tus primeras Macros o Subrutinas y testear tus programas mientras los estás creando.
  • Trabajar con los Objetos principales que encontramos en un fichero de Excel, sus propiedades y métodos.
  • Dar formato, mediante código VBA, a Celdas, Filas, Columnas u Hojas de un Libro de Excel, de la misma manera que se hace de forma manual cuando trabajamos con Excel.
  • Trabajar con Módulos con el fin de crear tus programas de la manera más estructurada posible.

Estudiaremos:

  • Lo que son las Variables, cómo crearlas y veremos los diferentes tipos que VBA pone a nuestra disposición. Entenderás conceptos complejos como la diferencia entre “Vector” y “Matriz”
  • Lo que son las Estructuras de Decisión, daremos un repaso a las más utilizadas.
  • Lo que son las Estructuras de Control, también conocidas como “Bucles”,  veremos cómo se utilizan con el fin de que las automatizaciones se ejecuten de la manera más eficaz posible.

El curso es ideal para dar tus primeros pasos dentro del mundo de las automatizaciones en Excel.

Requisitos

Se recomienda que el alumno posea un nivel avanzado de Excel o un nivel intermedio capaz de trabajar con Fórmulas o Funciones complejas en Excel.
No son necesarios conocimientos previos de programación pero si recomendables.

A continuación vea los videos de ejemplo del curso de Macros:

Temario de Curso


temario excelLeccion I

¿Qué es una Macro? - ¿Qué es VBA?

Empezamos el curso explicando lo más básico a modo de introducción. ¿Qué es una Macro en Excel y qué es VBA? son dos conceptos que debemos tener claro antes de adentrarnos en el mundo de las automatizaciones en Excel. Las macros son un grupo de instrucciones programadas cuya tarea principal es la automatización de tareas repetitivas y la resolución de cálculos complejos.

temario excelLeccion II

Activar - Desactivar Pestaña Desarrollador

Para empezar a programar Macros en Excel debemos tener visible la opción “Programador” en el menú de nuestro fichero de Excel. Una vez activada esta opción tendremos acceso a todo lo necesario para trabajar con VBA. Podremos, desde ahí, ejecutar una Macro, insertar controles ActiveX, acceder al Editor de Visual Basic entre muchas otras acciones.

temario excelLeccion III

Editor Visual Basic

Vemos como acceder al Editor de Visual Basic, herramienta de Excel desde donde vamos a escribir código VBA. Explicamos, a grandes rasgos, las principales partes del Editor como pueden ser el explorador de proyectos y el área donde vamos a escribir el código. Según vayamos avanzando en el curso veremos con más detalle más de las utilidades que nos proporciona.

temario excelLeccion IV

Ventanas y Barra de Herramientas

Dentro del Editor de Visual Basic también existen las típicas Barra de Herramientas de cualquier aplicación de Microsoft. En el vídeo mostramos como visualizarlas y ocultarlas. Así mismo vemos como ocultar y visualizar la Ventana de Propiedades, de Inmediato, de Inspección y de Locales

temario excelLeccion V

Mi Primera Macro

Una vez dedicados unos vídeos para dar a conocer el entorno donde vamos a trabajar el resto del curso, continuamos creando nuestra primera Macro. Es un ejemplo muy sencillo pero que nos será muy útil para irnos familiarizando con la sintaxis que se utiliza en VBA.

temario excelLeccion VI

Guardar Libro con Macro

Cuando trabajamos con Macros en un libro de Excel debemos cambiar la  extensión del fichero. Hay un par de opciones para indicar que un fichero contiene Macros, en este caso utilizamos la opción “Libro de Excel Habilitado para Macros”

temario excelLeccion VII

Seguridad de Macros

VBA es tan potente que no solo se pueden crear programas para automatizar tareas en Excel, también es posible crear código con malas intenciones, por ejemplo, borrar ficheros de un disco duro. Vemos una utilidad que nos permite gestionar aquellos ficheros que nos llegan y contienen Macros pudiéndolas habilitar o deshabilitar según el nivel de seguridad que elijamos.

temario excelLeccion VIII

ActiveX - ComboBox – Eventos

Eventos típicos de este control, y que repasamos en esta lección, son el evento “Change”, “DropButtonClick”, y el evento “Click”.

temario excelLeccion IX

Objetos - Propiedades - Métodos - Eventos

VBA es un lenguaje de programación orientado a objetos, por tal motivo los Objetos, Propiedades, Métodos y Eventos están siempre presentes a la hora de programar en VBA. Aprender a diferenciar estos cuatro conceptos es importantísimo. Aunque a lo largo del curso trabajaremos con estos conceptos, aprovechamos este tutorial para hacer una pequeña introducción.

temario excelLeccion X

Objeto Range

Una de las formas que vamos a utilizar para hacer referencia a una celda o un rango de celdas es el objeto “Range”. En el vídeo vemos como introducir contenido en una celda a través de la propiedad “Value” del objeto “Range” o de borrarlo a través de los métodos “Clear o ClearContents”.

temario excelLeccion XI

Objeto Cells

El objeto “Cells” es muy similar al objeto “Range”, también se utiliza para hacer referencia a celdas. La forma de usar estos objetos es ligeramente diferente por lo que en algunas ocasiones optaremos por la primera opción y otras veces utilizaremos la opción de “Range”.

temario excelLeccion XII

Range y Cells Combinados

Aparte de utilizar los objetos “Range” y “Cells” de manera individual, existe una manera, más avanzada, de utilizarlos conjuntamente para hacer referencia a rango de celdas de una hoja de Excel.

temario excelLeccion XIII

ActiveCell

Estudiamos las peculiaridades de este objeto que hace referencia a la celda que en esos momentos está activa. Otra opción a las vistas anteriormente para trabajar con una celda en concreto. Con este objeto no se puede hacer referencia a más de una celda.

temario excelLeccion XIV

Negrita, Subrayado, Tipo Fuente y Tamaño

Cuando se empieza a programar con VBA se suele practicar modificando las propiedades del texto de una celda o rango de celdas. Utilizamos las propiedades Bold, Italic, Underline, Name y Size para cambiar ciertos formatos a diferentes celdas. También vemos un nuevo objeto llamado “Font” que hace referencia al texto de una celda.

temario excelLeccion XV

Objeto Range

Una de las formas que vamos a utilizar para hacer referencia a una celda o un rango de celdas es el objeto “Range”. En el vídeo vemos como introducir contenido en una celda a través de la propiedad “Value” del objeto “Range” o de borrarlo a través de los métodos “Clear o ClearContents”.

temario excelLeccion XVI

Alineación Horizontal y Vertical

Seguimos viendo como modificar el formato del contenido de una celda. Utilizamos la propiedad “HorizontalAlignment” y “VerticalAlignment” para jugar con las alineaciones que se pueden aplicar al contenido de las celdas (horizontal y vertical).

temario excelLeccion XVII

Selection - Merge

El método “Merge” se utiliza cuando, mediante código VBA, queremos combinar el contenido de una celda en varias. Como vemos, casi todas las acciones que se pueden hacer manualmente en Excel se pueden replicar con código VBA.

temario excelLeccion XVIII

Modificar Colores Celda - ColorIndex

La propiedad “ColorIndex” se utiliza para cambiar colores de ciertos objetos de Excel. En este caso la usamos para cambiar el color del texto, del fondo o del bode de una celda.

temario excelLeccion XIX

Modificar Colores Celda Usando RGB

Para cambiar el color de ciertos objetos de un libro de Excel, además de la propiedad “ColorIndex” es posible utilizar la función “RGB”. “RGB” nos proporciona una gama mucho más amplia de colores donde elegir, en total disponemos de más de 16,5 millones de diferentes colores.

temario excelLeccion XX

Copiar, Cortar, Pegar y Pegado Especial

Tareas como copiar, cortar, o pegar el contenido de una celda son tareas habituales que realizamos a menudo cuando trabajamos con Excel. Mediante los métodos “Copy, Cut, Paste o PasteSpecial” logramos hacer lo mismo con VBA

temario excelLeccion XXI

Vaciando el Portapapeles

Cuando utilizamos los métodos “Copy o Cut” la información que manejamos queda almacenada en el portapapeles. Para evitar que cuando cerremos el libro de Excel aparezca el mensaje “se ha puesto gran cantidad de información en el portapapeles” utilizamos la propiedad “CutCopyMode”.

temario excelLeccion XXII

Ejecutar Macro Paso a Paso

Una de las ventajas que nos proporciona el editor de Visual Basic es el poder ejecutar una Macro “Paso a Paso”. De este modo ejecutamos un proceso línea por línea pudiendo chequear lo que hace cada línea de código que se va ejecutando. Se suele utilizar mucho para depurar errores de programación.

temario excelLeccion XXIII

Trabajando con Filas - Rows

Si en anteriores vídeos veíamos como hacer referencia a una celda, en este caso vemos cómo hacer referencia a las diferentes filas de una hoja Excel. En los ejemplos seleccionamos, insertamos, ocultamos o modificamos el alto de las filas de nuestra hoja, entre otras acciones.

temario excelLeccion XXIV

Trabajando con Columnas – Columns

Tareas similares a las que se hacen con las filas se pueden hacer con las columnas. Utilizamos el objeto “Columns” para hacer referencia a las columnas de nuestra hoja de Excel.

temario excelLeccion XXV

Trabajando con Hojas – Sheets

Otro de los objetos clásicos de Excel son las diferentes hojas que contiene un libro. El objeto “Sheets” es uno de los utilizados cuando queremos hacer referencia a una hoja de un libro. Con VBA, como observamos en el vídeo, podemos seleccionar una hoja en concreto, cambiarle el nombre o el color de fondo de la pestaña que contiene el nombre.

temario excelLeccion XXVI

Trabajando con Hojas - Sheets (2)

Segunda parte del tutorial dedicado al objeto “Sheets” donde vemos más acciones que se suelen hacer con las hojas de un libro como añadir (una o varias hojas nuevas a la vez), eliminar, ocultar, copiar o mover.

temario excelLeccion XXVII

WorkSheets

El objeto “WorkSheets” es muy similar al objeto “Sheets” pero con pequeñas diferencias que es muy interesante conocer.

temario excelLeccion XXVIII

Libros - WorkBooks, ActiveWorkbooks y ThisWorkbook

En muchas ocasiones vamos a tener que referenciar el libro con el que estamos trabajando así como otros que podamos tener abiertos. Utilizar objetos como el libro que contiene la Macro que estamos ejecutando o el libro que en ese momento esté activo entre todos los que puedan estar abiertos son formas comunes de diferenciar un libro en concreto.

temario excelLeccion XXIX

Libros - Name, Path y Fullname

Segundo tutorial dedicado a trabajar con los diferentes libros de Excel que podamos tener abiertos. Con VBA es posible extraer el nombre de cualquiera de los libros así como el nombre de la carpeta donde está guardado en el disco duro.

temario excelLeccion XXX

Libros - Add, Open, Close, Save y SaveAs

Siguiendo con libros vemos como, con VBA, se puede añadir un libro nuevo, abrir un libro ya guardado, cerrarlo, guardarlo o guardarlo como, tareas que a diario hacemos si trabajamos con Excel.

temario excelLeccion XXXI

Variables - Dim, String e Integer

Aparece en escena el concepto de “Variables” presentes en todos los lenguajes de programación. Vemos lo que son, para qué se utilizan, cómo se crean y algunos de los diferentes tipos de variables que existen en VBA. La gran ventaja de una variable es que acceder al dato que se guarda en ellas es mucho más rápido que a cualquier dato que esté almacenado en una celda.

temario excelLeccion XXXII

Variables - Date y Boolean

Siguiendo con las variables vemos varios ejemplos de variables donde podemos guardar información en formato fecha y variables donde solo podemos guardar el valor de verdadero o falso.

temario excelLeccion XXXIII

Variables - Option Explicit

La expresión “Option Explicit” se utiliza cuando queremos que una variable, antes de poder ser utilizada, debe ser creada con anterioridad. Esto conlleva una serie de ventajas e inconvenientes que analizamos en este tutorial.

temario excelLeccion XXXIV

Variables - Vectores, Arrays o Matrices Unidimensionales

Continuando con las variables introducimos nuevos conceptos que hacen mucho más interesante el uso de las mismas. Aprendemos a crear y utilizar un “Vector” o “Matriz Unidimensional”.

temario excelLeccion XXXV

Variables - Arrays o Matrices Multidimensionales

Continuación del tutorial anterior en el que nos adentramos en el concepto de “Array” o “Matriz Multidimensional” llegando a profundizar lo máximo posible en el mundo de las variables.

temario excelLeccion XXXVI

Arrays Dinámicos

Hasta ahora los vectores y matrices que creábamos eran “estáticas”, en esta lección tratamos el concepto de vectores o matrices “dinámicos”, es decir, podremos modificar las dimensiones de un vector o array durante la ejecución cualquier proceso.

temario excelLeccion XXXVII

Variables Objeto

Aparte de poder almacenar datos en una variable, existen otro tipo de variables donde podemos almacenar objetos de un fichero de Excel para luego hacer referencia a ellos de una manera mucho más eficaz. Podemos almacenar en variables objeto, una Hoja, un Gráfico, una Tabla Dinámica, una Celda, etc.

temario excelLeccion XXXVIII

Módulos

Cuando escribimos código podemos hacerlo en varios apartados, depende donde elijamos el código puede variar. Vemos como crear o eliminar “Módulos”. Analizamos su utilidad ya que su uso nos va a permitir disfrutar de innumerables ventajas.

temario excelLeccion XXXIX

Tipos de Datos Definidos por Usuario

Los tipos de datos definidos por el usuario es un recurso que ofrecen los lenguajes de programación. Nos va a permitir crear un “Vector” o “Array” donde vamos a poder almacenar información de diferente tipo (string, boolean, integer, doublé, etc).

temario excelLeccion XL

Estructuras de Decisión - If, End IF

Todos hemos utilizado la función “Si” en Excel, ahora toca el turno de utilizarla cuando estamos programando. Hay pocos programas que no utilizan al menos una vez esta instrucción. Dominar su uso es primordial para optimizar nuestros programas.

temario excelLeccion XLI

Estructuras de Decisión - If Anidados

Al igual que podemos anidar la función “Si” en Excel, por supuesto, también podemos hacerlo en VBA de una manera, incluso, mucho más sencilla y más fácil de aprender. Vemos con detalle cómo utilizar conceptos tales como: “If… End If… Else… ElseIf…”

temario excelLeccion XLII

Estructuras de Decisión - Select Case

Muy similar a la instrucción “If” que hemos visto anteriormente. Su utilización es muy parecida, en algunas ocasiones nos va a ser más útil utilizar la instrucción “If” y en otros casos la instrucción “Select Case”. Después de este tutorial podrás ver las diferencias hay entre las dos.

temario excelLeccion XLIII

Operadores Lógicos AND Y OR

Dentro de los operadores lógicos en VBA vemos dos de los más utilizados. Su uso es casi idéntico al modo en que utilizamos las funciones “Y“ y “O” en Excel. En este tutorial vemos algún ejemplo combinándolos con la instrucción “If”.

temario excelLeccion XLIV

Operadores Lógicos XOR y NOT

Cuando programamos con VBA tenemos a nuestra disposición varios operadores lógicos para utilizar en nuestras Macros. Llega el momento deconocer otros dos, menos conocidos que el “And” y el “Or” pero, igual de interesantes.

temario excelLeccion XLV

Estructuras de Control - For Next

Las “Estructuras de Decisión” nos van a permitir ahorrar muchas líneas de código y repetir un proceso similar cientos o miles de veces con unas pocas líneas de código nada más. VBA pone a nuestra disposición varias, en este caso vemos la más conocida y utilizada.

temario excelLeccion XLVI

Rellenar Array Unidimensional con For Next

Vídeo en el que vemos un ejemplo práctico utilizando un bucle “For… Next”. El rellenar un vector de manera automática es un recurso de programación que debemos conocer para ponerlo en práctica cuando sea necesario.

temario excelLeccion XLVII

Estructuras de Control - For Next Anidados

Una vez comprobada la enorme potencia del bucle “For… Next” avanzamos un poco más para ver un caso práctico de cómo se pueden anidar este tipo de “Estructuras de Decisión”. En el ejemplo de este tutorial anidamos un bucle “For... Next” hasta en tres niveles.

temario excelLeccion XLVIII

Estructuras de Control - While Wend

Otra de las “Estructuras de Decisión” que podemos utilizar programando con VBA y que conviene dominar para tener claro en qué ocasión debemos utilizar ésta y cuando un “For… Next”

temario excelLeccion XLIX

Estructuras de Control - Do While Loop

Bucle casi idéntico al “While… Wend” pero con sintaxis diferente, el concepto y su utilización son iguales. La versión “Do While... Loop” se puede considerar como más moderna.

temario excelLeccion L

Estructuras de Control - Do Until Loop

Su uso es similar al bucle “Do While… Wend” pero con una ligera diferencia a la hora de evaluar la condición que nos va a determinar si el bucle se sigue ejecutando o no.

temario excelLeccion LI

Estructuras de Control - Do Loop

Se puede considerar como un bucle infinito ya que al crearlo no indicamos cuando debe dejar de ejecutarse. Es mediante una sentencia adicional donde le decimos cuando el control del programa debe de salirse del bucle, normalmente se utiliza una instrucción “If” para hacerlo.

temario excelLeccion LII

Interrumpir Bucles

Cuando estamos testeando nuestras Macros, sobre todo cuando contienen bucles, nos va a ser necesario interrumpir la ejecución de la Macro de manera manual antes de que llegue al final. Cuando incluimos bucles en nuestros programas, sobre todo al principio, vamos a cometer errores y los bucles se van a estar ejecutando muchas más veces de las previstas, en alguna ocasión hasta de manera indefinida. Es por esto por lo que es importante saber cómo abortar, manualmente, la ejecución de una macro mientras la estamos probando.

temario excelLeccion LIII

Estructuras de Control - For Each Next

Bucle creado para ser utilizado en la programación orientada a objetos. Este bucle nos va a permitir “posicionarnos” en todos los objetos Excel de una misma clase que podamos tener en un libro de Excel, por ejemplo, las hojas de un libro, todos los gráficos de una hoja, todas las celdas de un rango de celdas, etc. Una vez vayamos accediendo a cada uno de los objetos recorridos con el bucle podremos realizar las tareas que deseemos sobre cada uno de ellos.

temario excelLeccion LIV

With - End With

Recurso muy interesante cuando queremos cambiar varias propiedades a un mismo objeto en Excel. Utilizarlo nos va a ayudar a tener que escribir menos código, también ganaremos rapidez a la hora de ejecutar nuestros programas. Su uso es muy recomendable y, por así decirlo, imprescindible.

temario excelLeccion LV

Acelerando Bucles

Cuando creamos una Macro debemos intentar que cuando la ejecutemos tarde el menor tiempo posible en finalizar. Al trabajar con “Bucles” es fácil encontrar procesos que se repiten miles de veces. El ahorrar tiempo en esos casos es muy importante. En el tutorial vemos un par de consejos para hacer que nuestros “Bucles” o “Macros”, en general, se ejecuten de la manera más rápida posible.

temario excelLeccion LVI

Modos de Ejecutar una Macro

Una vez creamos una Macro debemos dar la opción al usuario final de poder ejecutarla mientras está utilizando un libro de Excel. Existen varias maneras de que una macro pueda ser ejecutada: haciendo click en un icono que creemos en la barra de herramientas, haciendo click en una forma o imagen, etc.


contacto_express

Nombre:

Email:

Comentario:

servicio_cliente

Nuestra Oficinas