Excel: Macros Básicos. Visual Basic para aplicaciones

Documentos relacionados
Seminario de Actualización - Excel Avanzado y Macros. Visual Basic. Conceptos Básicos de Visual Basic para Aplicaciones

Guía del Curso Certificación It en Microsoft Excel VBA para Excel: Macros and Graphics Expert

Guía del Curso Experto en Microsoft Excel 2016, VBA y Business Intelligence

Para ponerlo en funcionamiento deberemos realizar los siguientes pasos:

Macros y Visual Basic para Aplicaciones en Excel

VBA Excel 2013 Programación en Excel: Macros y lenguaje VBA

Introducción a la Programación en Visual Basic y su aplicación en Excel. M.I. Jaime Alfonso Reyes Cortés

VB For Applications For Excel 2010

Curso de Excel Avanzado

Macros y Visual Basic para Aplicaciones en Excel

PASOS PARA CREAR FUNCIONES CON VBA

Introducción. Visual Basic para Aplicaciones (VBA) en Excel: aspectos elementales

CURSO EXPERTO EN MACROS CON MICROSOFT EXCEL NIVEL AVANZADO

Por qué ExecuTrain? Por qué ExecuTrain? Modalidad de servicio

AUTOMATIZACIÓN DE TAREAS REPETITIVAS MEDIANTE GRABACIÓN DE MACROS

Repasar las herramientas básicas para crear y animar una presentación de PowerPoint. Utilizar y crear plantillas automatizando tareas repetitivas.

Índice general. Capítulo 1 Conceptos básicos. Capítulo 2 Controles básicos I. Pág. N. 1

Excel for masters. Macros y aplicaciones VBA

MINERA ALUMBRERA LIMITED (SUCURSAL ARGENTINA)

1 CREANDO SOLUCIONES A MEDIDA

Ejercicio 9 Introducción a la programación con Macros de Excel.

Visual Basic for Applications

Ejercicios sobre Objetos Libros:

Gestión de cobranzas con Excel

Programación con VBA Excel

por Elsa Matilde Meyer INDICE DE CONTENIDOS VERSIÓN DEMO

Microsoft Excel 2013 Avanzado

MACROS. Automatizar tareas a través del uso de las macros.

VBA. Visual Basic para Aplicaciones. Guía 1. Visual Basic para Aplicaciones en Office 1

Caso de aplicación. Facturación a clientes en MS Excel, con macros. Aplicación que permite facturar, actualizar datos, resumir datos.

Excel Excel Avanzado. Parte 2 Tema: Macros. L.I. Luis Adrián Valdez Mendivil

1. Lee bien la siguiente información, allí encontrarás varios ejemplos que debes escribir en editor de Visual Basic de Excel.

Parte 4: Estructuras de Control

AUTOMATIZACIÓN DE HOJAS DE CÁLCULO EN EXCEL. Presentación Automatización de Hojas de Cálculo en Excel Módulo I Funciones de Usuario...

INDICE Parte 1. Visual Basic Capitulo 1. Qué es Visual Basic? Capitulo 22. Mi Primera Aplicación Capitulo 3. Elementos del lenguaje

Contenido. Samayra Niebles Velasquez

Curso de Visual Basic Lección 1 Area Interactiva -

Microsoft Word. Microsoft Word 2013 SALOMÓN CCANCE. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

Microsoft Excel 2013 Completo

Enviar Felicitación Navideña por con Off. 2007

VERSION 2. Automatización y Personalización de Procesos Utilizando Excel En Nivel Avanzado. Nombre. Código Sence hrs.

Fundamentos de Excel

PERIODO 3 HOJA DE CÁLCULO CONCEPTOS INTERMEDIOS OPERACIONES CON CELDAS, FILAS Y COLUMNAS EN EXCEL SELECCIONAR COPIAR MOVER BORRAR

Por qué usar VBA en Excel 2010?

Microsoft Excel Nivel Avanzado Macros

EDUComputacion. Te ofrece el curso de:

MACROS AUTOMÁTICAS CON VBA EXCEL Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

Manual de Access. RGA Training & Solutions

ESCUELA DE INFORMÁTICA

CORPORACIÓN UNIFICADA NACIONAL DE EDUCACIÓN SUPERIOR FACULTAD DE INGENIERIAS LINEA INFORMÁTICA

Manejo de Software para Microcomputadoras. Visual Basic para Aplicaciones en Excel

Formulario VBA en Excel. Creación del formulario. Actividad grado 10.

PORQUE EL CONOCIMIENTO HACE TRIUNFADORES. Macros

5. Subprogramas Fundamentos de Informática

Aplicaciones VBA con Excel

Aplicaciones de Macros en Excel y Visual Basic. web

Macros y lenguaje VBA Aprender a programar con Excel (2ª edición)

TABLAS DINÁMICAS Y UTILIZACION DE MACROS PARA LA ORGANIZACIÓN DE INFORMES MICROSOFT EXCEL Unidad N 4

Contenido Introducción a VBA

5.2. Combinar celdas Ajustar texto a la celda Insertar filas y columnas Insertar filas Insertar columnas. 5.5.

Cómo utilizar VBA para importar datos de Excel a Access

MICROSOFT OFFICE 2010

Programación: QBASIC

Introducción a la Programación en Visual Basic y su aplicación en Excel. M.I. Jaime Alfonso Reyes Cortés

EXCEL I UNIDAD 1 EMPEZANDO A TRABAJAR CON EXCEL (SEMANA 1)

Introducción: La tarea que se debe llevar a cabo consiste en crear dos macros y guardarlas en una

Microsoft Excel 2007 completo

Sentencias o instrucciones en Visual BASIC

COMISIÓN NACIONAL PARA EL AHORRO DE ENERGÍA

Curso de Programación en Excel con VBA

MICROSOFT EXCEL MICROSOFT EXCEL Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

PROGRAMACIÓN DE MACROS DE EXCEL

Al realizar este curso, el alumno adquirirá las siguientes habilidades y conocimientos:

ComboBox: cuadro o caja combinada, permite tener varias opciones de las cuales seleccionar y ver una.

INSTITUCION EDUCATIVA ACADÉMICO Tecnología e Informática MACROS EN EXCEL. Parte I

Macros en Excel 2007

Microsoft Office Excel

Guías Excel 2010 Controles, macros y funciones Guía 112. Contenido Controles y macros Ideas previas Grabación de macros...

Guía rápida de Excel Controles y macros A.Roldán 2010

MS-Excel 2007, Intermedio Avanzado (30 horas)

Tabletas en el aula. Mi primera hoja de cálculo con WPS Office. Edición Autor: Fernando Posada Prieto canaltic.com

A toda persona que utilice o esté interesado en mejorar su dominio en el paquete ofimático de Microsoft.

Macros y VBA en MS Excel (Visual Basic for Applications) Aplicaciones para Ingeniería. Profesores: Hugo Mora, Ignacio Casas

Ficha Revisar. Grupo Revisión

CURSO EXCEL 2013 OBJETIVOS. El curso tiene un enfoque práctico y pretende conseguir los siguientes objetivos:

FACULTAD DE INGENIERIA DEPARTAMENTO DE INGENIERIA INDUSTRIAL

Microsoft Word 2003 (Completo)

Comencemos a programar con. Entrega 10. Estructuras de Control II

QUANTUM COMPUTACION CURSO DE PLANILLA ELECTRONICA MICROSOFT EXCEL 2013

MACROS Y VBA CON EXCEL

FUNDAMENTOS DE INFORMÁTICA

Guía práctica Excel 2007

Formularios. Contenido TECNOLOGÍA WORD

Entorno de trabajo de Excel 2010

Microsoft Excel 2003 (Completo)

Microsoft Excel 2003 (Completo)

COMISIÓN NACIONAL PARA EL USO EFICIENTE DE LA ENERGÍA

LABORATORIO Nº 1 Sistemas de Información asociados a los Formularios en Excel

UNIDAD 5. calc OPCIONES AVANZADAS. CURSO: LibreOffice

INSTITUCIÓN EDUCATIVA JOSÉ EUSEBIO CARO ÁREA DE TECNOLOGÍA E INFORMÁTICA 2016 DOCENTE JESÚS EDUARDO MADROÑERO RUALES GRADO OCTAVO TEMA

Transcripción:

Excel: Macros Básicos Visual Basic para aplicaciones

Una macro Excel es una serie de procedimientos o funciones agrupados en un módulo vba (visual basic para aplicaciones) que se almacena para poder ejecutarse cuando se invoque a dicha macro.

El lenguaje vba esta enfocado a la realización de programas sobre las herramientas Excel, Access, Word. Con macros vba podemos crear nuevas funciones para nuestras hojas Excel, personalizar estilos y formatos, crear programas para la resolución de cálculos complejos y automatizar tareas.

Las macros son usadas para economizar procesos, evitando tener que repetir de tareas dentro de una hoja de Excel. Excel incluye protecciones para ayudar a proteger contra virus susceptibles de ser transmitidos por macros. Para poder trabajar con un libro que contiene macros, se debe habilitar el manejo de macros dentro de Microsoft Excel.

En Excel se pueden realizar : Procedimientos: pasos repetidos y automáticos Manejo de Objetos: un ítem que puedes controlar con botones Funciones: Hacer calculos y devolver un valor x Porque usar Macros Hacerlo mas rápido Evitar errores de entradas manuales Maximizar el uso de Excel

Por que Visual Basic? Visual Basic es el lenguaje en el que se apoya Excel para hacer procedimientos por medio de programación.

Grabar un Macro Record Macro: Asigna un nombre y un procedimiento, pon "stop" Puedes asignar un "shortcut" Puedes editar las líneas de la grabación Ejercicio: GRABA un Macro que ejecute lo siguiente: "Miprimermacro" Cambia el nombre a la hoja por "Prueba" Pon tu nombre completo en la Celda "B2" Pon los años que tienes en la celda "B3" Haz un "Scroll down" (Muévete en la hoja con las barritas) En la celda "B4" pon una formula que calcule el numero de días vividos En la celda "C5" coloca la leyenda "Días vividos" STOP

Correr un Macro Pasos para correr Selecciona todo lo que escribiste en la hoja Bórralo En el menú de macros, pon "play" Revisa que ejecute lo mismo que hicimos en el ejercido anterior Agrega Shortcuts (atajos de teclado)

Veamos Que hicimos? La carpeta de modulo solo aparece ya que se grabó un macro, si no hay macros grabados no aparece Abre la barra de herramientas de EDIT en Visual Basic Las letras en verde no son parte de la programación, son comentarios y empiezan con un apostrofe ' o REM (juega con estos dos iconos: )

Lenguaje visual: Empezemos a hablar en Visual Basic Visual Basic Nosotros Sub Nombre() End Sub Mellamo Nombre() Acabé Todas las instrucciones Visual Basic es mejor decirles que empiezen Y que acaben SIEMPRE Activar y desactivar

Codigo: "Miprimermacro" Que.Como (Accion o propiedad) Range("B2").Select Referencia Absoluta Activecell.Select Referencia Relativa El texto siempre va entre comillas Para no ser confunido con Texto

Propiedades: Propiedades: Cambian valores, formatos, ubican, etc, Absolutas Range("A2").Select Range("A2").Value = 5 Range("A3").Select Select: Referencia de ubicación Value: = "Texto" o = valor Offset: Desfase (Row,Column) Relativas ActiveCell.select ActiveCell.Value = 5 Activecell.Offset(1,0).Select

Propiedades: Ejercico: GRABA un macro de nombre formatos Escribe en 3 celdas diferentes 3 nombres de superheroes Rellena una celda de color Cambia el color del texto a otra Agrega bordes a la tercera Selecciona las 3 celdas y centra el texto STOP Revisa Lo que es necesario en la macro Lo que da valor al macro Sub superheroe() '' Range("J4").Select ActiveCell.FormulaR1C1 = "Superman" Range("J5").Select ActiveCell.FormulaR1C1 = "La mujer maravilla" Range("J6").Select ActiveCell.FormulaR1C1 = "Afroman" Range("J4").Select With Selection.Interior.ColorIndex = 39.Pattern = xlsolid End With Range("J5").Select Selection.Font.ColorIndex = 5 Range("J6").Select Selection.Borders(xlDiagonalDown).LineStyle = xlnone Selection.Borders(xlDiagonalUp).LineStyle = xlnone With Selection.Borders(xlEdgeLeft).LineStyle = xlcontinuous.weight = xlthin.colorindex = xlautomatic End With... Range("J4:J6").Select With Selection.HorizontalAlignment = xlcenter.verticalalignment = xlbottom.wraptext = False.Orientation = 0.AddIndent = False.IndentLevel = 0.ShrinkToFit = False.ReadingOrder = xlcontext.mergecells = False End With

Revision de Codigo: Sub superheroe() ' Escribe 3 superheroes Range("J4").Select ActiveCell.FormulaR1C1 = "Superman" Range("J5").Select ActiveCell.FormulaR1C1 = "La mujer maravilla" Range("J6").Select ActiveCell.FormulaR1C1 = "Afroman" Rem Pone color solido a una celda Range("J4").Select With Selection.Interior.ColorIndex = 39.Pattern = xlsolid End With Range("J6").Select With Selection.Borders(xlEdgeLeft).LineStyle = xlcontinuous.weight = xlthin End With With Selection.Borders(xlEdgeTop).LineStyle = xlcontinuous.weight = xlthin End With With Selection.Borders(xlEdgeBottom).LineStyle = xlcontinuous.weight = xlthin End With With Selection.Borders(xlEdgeRight).LineStyle = xlcontinuous.weight = xlthin End With Rem Cambia color de celda Range("J5").Select Selection.Font.ColorIndex = 5 Rem Agrega bordes (Los bordes usan muchas lineas de codigo x que son 4 lineas 'en un rectangulo mas dos lineas interiores) ' Centra los textos de la seleccion de J4 a J6 Range("J4:J6").Select With Selection.HorizontalAlignment = xlcenter End With End Sub

Revision de Codigo: Correr completo: F5 Correr completo: F5 Loop infinito: Esc (una sola vez, basta)

Resumen: Hasta ahora ya aprendí: Grabar macros, correr macros y editar macros Identificar donde acaba y donde empieza una macro Ordenar la macro con comentarios para recordar que está haciendo Leer codigo de Visual Basic Manejar coordenada absolutas y relativas Saber que es importante y que puedo borrar

Cuadros de dialogo: Comando Uso Ejemplo Msgbox Para dar un aviso: Puedes tener OK, Abort, Yes & No, etc MsgBox "Tu mensaje", (boton+simbolo) MsgBox "Botones OK y Cancel", 1 Msgbox "Tu mensaje", 4+32 Inputbox Para pedir información al usuario como números o Texto y guardar esa información (variable) Se requiere declarar variable Dim x as integer Dim x as integer Sub box() X = InputBox(" Cuantos escalones hay en tu casa?") Range("J8").Value = X Range("J8").Select End Sub

Comandos Logicos: IF Comando Uso Ejemplo If condition Then Statement If condition Then statement Else IF condition Then statement ElseIF condition Then statement End if Condicion con una alternativa, Si la condicion no es verdadera, no pasa nada Condicion con dos alternativas: si la condicion es verdadera se ejecuta un procedimiento, si es falsa se ejecuta otro procedimiento Ejecuta mas alternativas Cada vez que se llega a un "Elseif" se vuelve a evaluar la condicion Sub Macro5() ' Condicion con una alternativa If ActiveCell.Value < 0 Then MsgBox "Tu mensaje" End If End Sub Sub Macro6() ' Condicion con dos alternativas If ActiveCell.Value < 0 Then MsgBox "Tu mensaje" Else Msgbox "Tu mensaje altenativo" End If End Sub No disponible para este curso

Ejercicio: Quiero hacer un Gaffette para una expo de accesorios para automoviles: Si el participante es propietario de dos o mas coches, es mas probable que compre mis productos: Haz un Macro que funcione para hacer estas Dos variantes de gaffette : Tu escoge los colores (6 columnas x 8 renglones) empieza en C3 y usa referencia absolutas Participante Participante Comprador Comprador Potencial

Comandos Logicos: Do...Loop Comando Uso Ejemplo Do Until Loop (Si es Falso, ejectuto) Sirve para repetir el procedimiento muchas veces hasta que aparezca una condicion que nos hara parar el ciclo de repeticiones Dim counter as integer Sub colores() hace la instruccion desde el inicio y hasta que la condicion se cumpla Do Until counter = 50 counter = counter + 1 ActiveCell.Select ActiveCell.Value = counter ActiveCell.Select Selection.Interior.ColorIndex = counter ActiveCell.Offset(1, 0).Select Loop End Sub 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50

Comandos Logicos: Do...Loop Comando Uso Ejemplo Do While Loop (Si es verdadero, ejecuto) Sirve para repetirse mientras las condiciones se cumplan Sub Ahora() hace la instruccion hasta que se cambie de estado Range("a2").Select Do While ActiveCell.Value > 0 ActiveCell.Offset(0, 1).Select If ActiveCell.Value = "" Then ActiveCell.Value = Date + Time ActiveCell.Offset(1, -1).Select Else ActiveCell.Offset(1, -1).Select End If Loop End Sub

Cuando corro un Macro: Boton Como hago para que al presionar un Boton (imagen) se corra un Macro?

Al abrir o cerrar el libro: automaticos Auto_Open () o Auto_Close() son procedimientos que se ejecutan al abrir o cerrar el libro. Sub Auto_Open() Statements End Sub Sub Auto_Close() Statements End Sub Porque sería bueno correr los macros al abrir o al cerrar el libro?

Ejercicio: Haz un macro que al abrirlo te de la bienvenida Y al cerrarlo se despida de ti. (usa msgbox) Hola!!!! Adios!!!!

Practicas Que reportes hago?

Ejercicio: Sheets Haz una base de datos de gastos: Mes Pagos Concepto Tarjeta Enero $2,500 Colegiatura Amex Enero $500 Mantenimiento Amex Febrero $800 Varios Amex Marzo $2,000 Mantenimiento BBVA Marzo $6,000 Varios Amex Abril $2,500 Colegiatura BBVA Abril $1,700 Varios BBVA Mayo $1,800 Mantenimiento BBVA Mayo $2,000 Varios BBVA Mayo $2,500 Colegiatura Amex

Sheets GRABA un macro que haga una tabla dinamica con Mes en Renglones, Concepto en columnas y Tarjeta como campo de pagina. STOP Tarjeta (All) Sum of Pagos Concepto Mes Colegiatura Mantenimiento Varios Grand Total Abril 2500 1700 4200 Enero 2500 500 3000 Febrero 800 800 Marzo 2000 6000 8000 Mayo 2500 1800 2000 6300 Grand Total 7500 4300 10500 22300

Sheets GRABA un Macro que cambie el nombre a la Hoja de la tabla pivote por "Pivote" Stop Graba un macro que copie los valores de la tabla pivote y los pegue en el renglon "A100" pero como valor Stop

Sheets Graba un macro que grafique los gastos como columnas moradas STOP *Haz una Macro "General" que llame a todas las macros que grabaste Graba un macro que al cerrarse el libro borre la Hoja llamada Pivote STOP

Explication: Aplicaciones para hojas: Absolutas : Sheets("Sheet4").Select Sheets("Sheet4").Name = "Pivote" Relativas: ActiveSheet.Select ActiveSheet.Name = "Pivote2"

Funciones Son "Formulas" que con argumentos devuelven un valor. Hacen trasformaciones de datos a partir de bases lógicas Se llaman por medio de un macro Function CelciusConversion(F) Celsiusconversion = (5 / 9) * (F - 32) End Function Function Name(argument) Statments End function Sub Fahrenheit_Celsius() F = ActiveCell.Value ActiveCell.Offset(0, 3) = Celsiusconversion(F) End Sub

Llamar a la función: Ahora apaece en el menu de f(x) funcion Aparece como formula