Macros y VBA: Programa, automatiza y amplía Microsoft Excel.
4.8 (27 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
112 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Macros y VBA: Programa, automatiza y amplía Microsoft Excel. to your Wishlist.

Add to Wishlist

Macros y VBA: Programa, automatiza y amplía Microsoft Excel.

Adapta Excel al 100% de tus necesidades con David Asurmendi, casi 40.000 estudiantes en YouTube. ¡Inscríbete!
4.8 (27 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
112 students enrolled
Created by David Asurmendi
Last updated 8/2017
Spanish
Current price: $15 Original price: $100 Discount: 85% off
30-Day Money-Back Guarantee
Includes:
  • 15.5 hours on-demand video
  • 155 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Automatizar trabajos repetitivos para que se realicen en un solo paso creando Macros.
  • Añadir nuevas funcionalidades, añadir herramientas que Excel no incorpora de serie programando con VBA.
  • Mejorar la usabilidad de las hojas añadiendo Controles ActiveX y formularios.
  • Adaptar las herramientas de Excel a tus necesidades reales.
View Curriculum
Requirements
  • Nociones básicas de Excel y su interface de usuario.
  • Manejo básico de las herramientas que componen el programa.
Description

Aunque Excel es un programa casi infinito, llega un momento en que las herramientas que usamos no acaban de adaptarse al 100 a nuestras necesidades, o simplemente algo que nos gustaría que tuviera Excel, no lo tiene.

O, por ejemplo, tarde o temprano nos daremos cuenta que habitualmente repetimos siempre los mismos trabajos y nos gustaría ganar tiempo, ser más eficaces. Nos gustaría que nuestros trabajos fueran más automáticos y no necesitaran tano de nuestra interactuación con el programa.

Bueno pues la solución a todos estos problemas la tenéis delante, la creación de macros y la programación de Excel con VBA, con Visual Basic. Con este curso vais a poder solucionar todos los problemas que acabo de comentar. Un curso que no dejará a nadie atrás. Un curso en el que aprenderás a programar en tu herramienta preferida, Excel. Con decenas de ejemplos prácticos y con los documentos que uso en las explicaciones para que puedas practicar.

Una vez finalizado el curso seréis capaces de:

  • Crear, modificar y eliminar Macros creadas con la Grabadora de Macros que os permitirán automatizar vuestros trabajos diarios, hasta el punto de ser realizados solo, con la simple pulsación de un botón.
  • Podréis añadir nuevas funcionalidades al programa, crear hojas o herramientas que se adapten a vuestras necesidades de negocio o profesionales, e incluso podréis crear vuestras propias funciones personalizadas, que se podrán utilizar en las fórmulas de Excel.
  • También seréis capaces de añadir controles ActiveX (Botones, Cuadros Combinados, Listas, Botones de a vuestras hojas de Excel para mejorar su usabilidad y funcionalidad. 

En definitiva, podréis utilizar las herramientas de Excel, pero adaptadas al 100% a vuestras necesidades y  seréis capaces de crear vuestras propias herramientas dentro del programa.

Who is the target audience?
  • Usuarios de Excel que necesitan realizar sus trabajos con mayor rapidez, ser más eficaces.
  • Usuarios de Excel que necesitan adaptar las herramientas del programa para que se adapten al 100% a sus necesidades.
  • Usuarios de Excel que quieren ampliar el programa con nuevas funcionalidades.
Curriculum For This Course
101 Lectures
15:19:41
+
Bienvenidos al Curso.
2 Lectures 09:42

Bienvenida al curso, presentación del profesor y explicación del funcionamiento del curso.

Preview 02:18

+
Primeros pasos con las Macros.
8 Lectures 58:51

En esta clase os enseño que pasos previos debemos dar antes de grabar una Macro:

  1. Aprenderemos a mostrar la ficha Desarrollador que contiene todas las herramientas necesarias para grabar Macros y crear Código VBA.
  2. Además ensayaremos la Macro que grabaremos en la siguiente clase. Este paso es necesario para no cometer errores en el proceso de grabación.
Pasos previos a la grabación de una Macro. Mostrar Ficha Desarrollador.
06:17

En esta clase grabaremos una Macro de ejemplo y la probaremos. Entre otras cosas aprenderemos a:

  1. Establecer las opciones iniciales de la Macro: Nombre, atajo de teclado, donde se guarda y descripción.
  2. Grabar una Macro: Grabaremos una macro en la que importaremos unos datos de Access para crear un gráfico e imprimirlo.
  3. Ejecutar la Macro grabada desde la ventana de Macros.
Preview 10:07

A la hora de guardar un documento de Excel que contiene Macros o Código VBA hay que hacerlo con precaución para no perder esa parte de los documentos.

En esta clase veremos que pasos hay que dar para guardar las Macros en documentos de Excel habilitados para Macros.

Cómo guardar documentos que contienen Macros o Código VBA.
04:06

Cuando abrimos un documento con Macros, Excel las deshabilita por cuestiones de seguridad. En esta clase os explicaré que opciones tenemos para habilitarlas:

  • Aprenderemos a habilitar las Macros para que se habiliten solo para la apertura actual.
  • Y también aprenderemos como habilitarlas para siempre, usando los Documentos de Confianza.
Abrir un documento que contiene Macros o Código VBA.
08:04

La apertura de un documento con Macros o Código VBA depende de como tengamos establecidas las opciones de los Documentos de Confianza y la seguridad de las Macros. En esta clase, entre otras cosas os explico:

  • A desactivar y activar los Documentos de Confianza.
  • A borrar la lista de Documentos de Confianza.
  • A establecer las opciones de apertura de documentos con Macros, las opciones de seguridad de las Macros y el Código VBA.
Configurar los Documentos de Confianza y la Seguridad de las Macros.
09:44

Excel nos ofrece algunas posibilidades para ejecutar nuestras Macros desde su interface de usuario, desde su UI. En esta clase, entre otras cosas os enseño:

  • A crearos vuestras fichas personalizadas en la Cinta de Opciones de Excel para ejecutar Macros desde botones creados en esas fichas.
  • A modificar la Barra de Herramientas de Acceso Rápido para que podáis ejecutar vuestras Macros desde ella.
  • A modificar la Barra de Herramientas de Acceso Rápido para que los botones que ejecuten vuestras Macros estén solo disponibles en los documentos que las contienen.
Cómo Ejecutar una Macro desde la Cinta de Opciones de Excel.
09:53

Una de las posibilidades más interesantes para ejecutar Macros, es la de utilizar controles para su ejecución, por ejemplo botones. En esta clase, entre otras cosas, os enseñaré:

  • A insertar un botón control de formulario para ejecutar macros.
  • Cambiar las características del botón.
  • Ejecutar una Macro al ser pulsado.


Cómo Ejecutar una Macro desde un Botón insertado en una hoja de Excel.
05:28

Dependiendo de lo que haga la Macro que grabemos, puede ser interesante que su ejecución se lance con una combinación de teclas. Algo similar a los típicos atajos de teclado. En esta clase, entre otras cosas, os explicaré:

  • Cómo establecer una combinación de teclas para ejecutar una Macro.
  • Que supone utilizar combinaciones de teclas que ya tienen una función en Excel.
Cómo Ejecutar una Macro con una combinación de teclas.
05:12
+
Opciones avanzadas de Macros.
3 Lectures 29:56

En esta clase os demostraré como la Grabadora de Macros tiene sus limitaciones. Aunque se trata de una buena herramienta, hay ciertos pasos que no es capaz de grabar y para solucionarlo tendremos que modificar la Macro, tendremos que modificar el código VBA de forma manual. Entre otras cosas veremos:

  • Cómo modificar una Macro.
  • Cómo desactivar el refresco de la pantalla de Excel para evitar parpadeos y ganar en rendimiento.
  • Cómo desactivar las solicitudes de confirmación de Excel, por ejemplo cuando se elimina una hoja.
Preview 10:23

Aprender a diferenciar cuando hay que utilizar Referencias Absolutas o Relativas al grabar una Macro. Entre otras cosas aprenderéis a:

  • Grabar Macros que siempre se ejecutarán en las mismas celdas usando referencias absolutas.
  • Grabar Macros que se ejecutarán en diferentes celdas usando referencias relativas.
Diferencias entre usar Referencias Relativas o Absolutas al grabar una Macro.
12:37

Ejercicio de repaso en el que practicaremos lo visto en las dos últimas secciones del Curso, dedicadas a las Macros. Entre otras cosas repasaremos:

  • Como grabar macros.
  • Cómo asignar una combinación a una macro.
  • Como asignar macros a un control de formulario, a un botón.
  • Cómo modificar una macro.
  • Cómo guardar documentos con macros.
Ejercicio Práctico: Repaso de Macros.
06:56

Repaso de Macros.
10 questions
+
Empezamos a programar en Excel.
7 Lectures 01:02:48
Introducción.
01:05

Identificar las diferentes partes del Editor de VB y los diferentes componentes que puede tener un proyecto de VB en Excel. Entre cosas os explicaré:

  • Las diferentes partes que componen la ventana del Editor de Visual Basic.
  • Los diferentes componentes que puede tener un proyecto de VB en Excel y cuál es su funcionalidad.
  • Modificaremos la propiedad visible de las hojas para ocultarlas de manera que no se puedan mostrar en Excel.
El Editor de Visual Basic. Componentes de un Proyecto VBA.
13:17

Escribir el primer código VBA y entender cómo se organiza el código en procedimientos y módulos. Entre cosas os explicaré:

  • Cómo organizar el código en procedimientos y módulos.
  • Normas básicas para definir procedimientos y crear módulos.
  • Normas básicas para empezar a escribir código VBA.
  • Creación de comentarios.
  • Ejemplo para colorear las celdas seleccionadas si cumplen una condición.
Preview 12:09

Ejecutar procedimientos de VBA desde el Editor de VB y desde la ventana de Macros. Entre cosas os explicaré:

Preview 03:56

Ejecutar procedimientos desde un botón de comando, un CommandButton. Utilizar el evento Click del botón para ejecutar código. Entre otras cosas os explicaré:

  • Cómo modificar las propiedades de un botón de comando. Name y Caption.
  • Conceptos generales de los eventos, que son y para que sirven.
  • Acceder al evento Click de un botón para ejecutar código.
Ejecutar Procedimientos desde un Botón de Comando, desde un evento.
12:58

Identificar y corregir los problemas y errores de compilación que se cometen habitualmente al empezar en la programación de Excel. Arreglar los errores de sintaxis que se suelen cometer habitualmente. 

Primeros errores y problemas con VBA. Errores de Compilación.
06:52

Ejercicio de repaso en el que practicaremos todo lo visto en la sección y además veremos detalles nuevos relacionados con el trabajo con celdas. Entre otras cosas os explicaré:

  • Cómo añadir un botón de comando y utilizar su evento para ejecutar procedimientos.
  • Cómo asignar valores a celdas.
  • Cómo borrar el contenido de celdas. Utilización del método ClearContens.
  • Como ejemplo práctico veremos cómo borrar facturas y como aumentar la numeración de una factura.
Ejercicio Práctico: Repaso de Empezamos a programar en Excel.
12:31

Repaso de Empezamos a Programar en Excel.
8 questions
+
If: Cómo tomar decisiones y ejecutar código condicionalmente.
9 Lectures 01:19:59
Introducción.
01:25

Crear un condicional con la instrucción IF que controlará si se cumple una condición no para ejecutar el código que está en su interior. Entre otras cosas os explicaré:

  • Cómo utilizar la instrucción IF para controlar si un dato es una fecha.
  • La función IsDate que permite saber si un dato es una fecha.
  • Utilizar el evento Change de una hoja para controla el valor que se escribe en sus celdas.
  • Utilizar la función Format para formatear una fecha y que muestre el día de la semana que es.
  • Utilizar la propiedad Offset para acceder a una celda partiendo de otra.
  • Utilización de la ventana Inmediato para ejecutar líneas de código y comparaciones.
Preview 14:40

Crear un condicional con la instrucción IF que controlará si se cumplen dos condiciones con la instrucción AND. Entre otras cosas os explicaré:

  • Cómo utilizar la instrucción IF con el And para controlar que se cumpla más de una condición.
  • Controlar si se cambian determinadas celdas para ejecutar código solo cuando cambien esas celdas.
  • Uso de las propiedades Row y Column de los objetos celda para saber cuál es la fila y columna de una celda.
IF y AND: Cómo ejecutar un código cuando se cumplen varias condiciones.
05:18

Crear un condicional con la instrucción IF que junto con el ELSE nos permitirá indicar que se ejecute código cuando se cumplan o no una o varias condiciones. Utilizar la instrucción MsgBox para mostrar mensajes de error al usuario.

IF y ELSE: Como ejecutar un código cuando se cumple y cuando no una condición.
08:28

Crear un condicional con la instrucción IF que junto con el OR permitirá ejecutar código cuando se cumpla alguna de varias condiciones que se controlen. Con que se cumpla una de ellas se ejecutará el código. Entre otras cosas os explicaré:

  • Utilizar la función Weekday  para colorear las celdas de diferentes colores dependiendo del día de la semana que es la fecha de la celda.
  • Uso de las propiedades Interior y Color de los objetos celda para colorear celdas.
IF y OR: Ejecutar código cuando se cumple alguna de varias condiciones.
10:54

Crear un condicional con la instrucción IF que junto con el ELSEIF nos permitirá tomar más de dos caminos. Crear condicionales que permiten más opciones para elegir que un IF con un ELSE.

IF con ElseIf: Cómo tomar más de dos caminos con un IF.
12:13

Ejercicio de repaso para practicar todo lo que hemos visto en la sección junto. Crearemos condicionales con las instrucciones IF, AND, OR, ELSE.

Ejercicio Práctico: Repaso IF con AND, OR y ELSE.
09:40

Ejercicio de repaso para practicar el tema de los condicionales. Entre otras cosas os explicaré:

  • Cómo controlar si ha cambiado una celda concreta usando la propiedad Address de los objetos celda.
  • Cómo controlar que una fecha sea menor o igual a la actual.
Ejercicio Práctico: Repaso IF. Controlar si el valor de una celda es numérico.
09:00

Desactivar y activar los eventos de Excel para mejorar el rendimiento del código y evitar encadenar eventos sin fin.

Como desactivar los eventos de Excel para evitar encadenar eventos sin fin.
08:21
+
Select Case: Cómo tomar decisiones y ejecutar código condicionalmente.
2 Lectures 21:07

Utilizar la instrucción SELECT CASE para ejecutar código condicionalmente dependiendo de la evaluación de una expresión, variable, celda… Parte I.

SELECT CASE: Condicionar el código al evaluar una expresión o dato. Parte I.
12:51

Utilizar la instrucción SELECT CASE para ejecutar código condicionalmente dependiendo de la evaluación de una expresión, variable, celda… Parte II.

CASAE ELSE Condicionar el código con un Select Case Parte II.
08:16

Repaso Instrucciones IF y SELECT CASE.
7 questions
+
Definición y uso de Variables y Constantes.
11 Lectures 02:02:55
Introducción.
01:38

Definir y usar una variable para capturar el botón pulsado en un MsgBox y actuar dependiendo del botón pulsado. Entre otras cosas explicaré:

  • Cómo configurar y usar un MsgBox para que muestre varios botones y ejecutar código dependiendo del botón que se ha pulsado.
  • Eliminar hojas de Excel utilizando el método Delete de los objetos tipo Worksheet. Lo usaremos para eliminar facturas.
Guardar en una Variable el botón pulsado en un MsgBox.
16:14

Obligar a declarar las variables antes de ser usadas. Veremos los problemas que puede acarrear utilizar variables sin declaración previa. Entre otras cosas explicaré:

  • Usar Option Explict para obligar a declarar variables.
  • Activar en el editor la obligatoriedad de declarar las variables antes de ser usadas.
  • Uso de Puntos de Interrupción y la ventana Locales para localizar problemas en el código.
Usar VariabLes sin declaración previa. Obligar a declarar variables.
16:57

Utilizar variables para almacenar los valores solicitados al usuario a través de la función InputBox de VBA. Crearemos un ejemplo que pedirá una serie de datos a usuario y antes de guardarlos en las celdas de Excel, pedirá confirmación al usuario a través de un MsgBox.

Utilizar la función InputBox para pedir datos al usuario.
17:46

Definir y usar variables estáticas que no pierden su valor, una vez se ha finalizado la ejecución del código. Entre otras cosas explicaré.

  • Situaciones extraordinarias en las que las variables Static pierden su valor.
  • Localizar la primera fila celda vacía después de una tabla de datos usando el método End de los objetos de tipo celda. 
Mantener el valor de las variables usando variables Static (Estáticas).
07:41

Detectar y solucionar problemas en el uso de variables. Entre otras cosas os explicaré:

  • Declarar variables de tipo String con un tamaño limitado y los problemas que puede acarrear hacerlo.
  • Usar puntos de interrupción y la ventana locales para observar el valor que tienen las variables durante la ejecución de código.
  • Declarar variables del mismo tipo en la misma línea.
Problemas más habituales a la hora de usar variables.
14:31

Utilizar el método InputBox de Excel y diferenciar las posibilidades que ofrece en comparación con la función InputBox de VBA. Entre otras cosas os explicaré:

  • Establecer el tipo de dato que se puede rellenar en el método InputBox.
  • Controlar que solo se puedan rellenar números.
  • Diferenciar el paso de argumentos por posición o por valor a las funciones o métodos.
Utilizar el método InputBox de Excel para pedir datos al usuario.
10:51

Declarar, inicializar y usar variables de tipo Object. Entre otras cosas os explicaré:

  • Cómo capturar las celdas que se seleccionan en un Inputbox.
  • Utilizar la instrucción Set para inicializar una variable de tipo celda, de tipo Range.
  • Recorrer con un bucle For Each las celdas seleccionadas en el Inputbox para colorearlas de rojo cuando tengan en su interior fechas que sean sábado o domingo. 
Preview 08:34

Controlar los errores en tiempo de ejecución que puedan producirse inesperadamente y controlar específicamente los errores conocidos. Entre otras cosas explicaré:

  • Uso de la instrucción On Error Go To para desviar el código cuando se produzcan errores en tiempo de interrupción.
  • Evitar que al cancelar un Inputbox se produzca un error en tiempo de ejecución.
  • Uso del objeto Err para obtener información de los errores en tiempo de ejecución.
Control de errores en tiempo de ejecución. On Error Go To.
15:22

Declarar variables globales que mantienen su valor y que son accesibles desde cualquier parte del proyecto. Entre otras cosas también explicaré:

  • Las situaciones especiales en las que una variable global puede perder su valor.
  • Utilizar el evento Before Close de los documentos de Excel para ejecutar código. 
Diferencias entre variables Globales y Locales.
09:05

Declarar y usar constantes para evitar utilizar valores fijos en el código que luego son muy difíciles de mantener.

Definir y usar Constantes.
04:16

Prueba test en a que repasaremos los conceptos explicados en las clases dedicadas a las variables y constantes.

Repaso: Variables y Constantes.
6 questions
+
Bucle For: Repetir trabajos un número de veces determinado.
5 Lectures 33:31
Introducción.
00:54

Definir y utilizar un bucle For para recorrer un número fijo de celdas. Repetir código un número de veces determinado.

Repetir un trabajo un número de veces determinado.
07:20

Calcular previamente el número de veces que se repetirá un bucle For. Recorrer un número variable de celdas con un bucle For.

Calcular previamente el número de veces que se repetirá un bucle For.
04:19

Modificar el incremento por defecto de los bucles For utilizando incrementos positivos y negativos. Además, entre otras cosas también explicaré:

  • A cortar y pegar celdas utilizando los métodos Cut y Paste de los objetos tipo celda y hoja respectivamente.
  • Eliminar filas utilizando la propiedad Rows y el método Delete de los objetos de tipo celda. 
Modificar el incremento por defecto de los bucles For. Incrementos negativos.
12:22

Ejercicio práctico en el que repasaremos el uso del For. Lo utilizaremos para filtrar unos datos. Entre otras cosas explicaré:

  • A mostrar y ocultar filas de datos usando la propiedad Hidden de los objetos de tipo celda a través de Rows.
  • Activar y desactivar en tiempo de ejecución dos botones de comando a través de su propiedad Enabled.          
Ejercicio Práctico: Ocultar filas de datos utilizando un bucle For.
08:36
+
Bucle For Each: Cómo recorrer colecciones de Objetos (Hojas, Celdas...).
3 Lectures 26:30
Introducción.
01:24

Usar el bucle For Each para recorrer colecciones de celdas. Entre otras cosas explicaré:

  • A utilizar el bucle For Each para crear con el contenido de una columna, tres nuevas.
  • Dividir la información de una celda en otras tres celdas usando funciones de texto. Right, Left, Mid y Len.
Transformar contenido de celdas con bucle For Each y funciones de texto.
17:07

Utilizar dos bucles For Each para recorrer las celdas de varias hojas y dividir el contenido de una columna, en tres columnas nuevas usando funciones de texto.

Recorrer celdas en todas las hojas de un libro. Proteger y desproteger hojas.
07:59
+
Bucle Do Loop: Repetir trabajos hasta o mientras se cumplan condiciones.
5 Lectures 49:34
Introducción.
01:00

Utilizar un bucle Do Until para repetir trabajos hasta que se cumpla una condición, controlando la condición al inicio o al final del bucle.

Do Until: Repetir trabajos hasta que se cumpla una condición.
14:25

Utilizar un bucle Do While para repetir trabajos mientras se cumpla una condición, controlando la condición al inicio o al final del bucle.

Do While: Repetir trabajos mientras se cumpla una condición.
08:28

Utilizar un bucle Do Until para repetir un trabajo hasta que se cumpla una de varias condiciones. Lo usaremos para recoger datos del usuario hasta que dejen un dato vacío o hasta que metan un dato duplicado.

Repetir trabajos controlando varias condiciones.
12:06

Utilizar Bucle Do para realizar búsquedas. Buscar información de un producto usando su referencia.  Utilizar la función Ucase para evitar problemas por mayúsculas y minúsculas en las comparaciones de cadenas String.

Ejercicio Práctico: Buscar un producto por su referencia usando un bucle Do.
13:35
8 More Sections
About the Instructor
David Asurmendi
4.8 Average rating
25 Reviews
112 Students
1 Course
Formador de Excel y Access en Youtube.

Llevo la mitad de mi vida usando Excel, durante los últimos 15 años explicando e impartiendo a todos los niveles, como se utiliza esta herramienta. Bien en forma de cursos presenciales o como ahora, desde mi blog y canal de YouTube. Actualmente tengo casi 40.000 alumnos-suscriptores a los que enseño todos los secretos de los programas Microsoft Excel y Microsoft Access.