Contenido Introducción a VBA

Documentos relacionados
PASOS PARA CREAR FUNCIONES CON VBA

ESCUELA DE INFORMÁTICA

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

Unidad 2. Elementos de Word2007 (I)

MICROSOFT WORD AVANZADO. Nº Horas: 18. Objetivos:

Clase 1 Excel

CURSO EXPERTO EN MACROS CON MICROSOFT EXCEL NIVEL AVANZADO

Elaboración de Documentos en Procesadores de Textos

Índice. Presentación Espacio de trabajo y gestión de archivos. Gestión de sitios y páginas

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

Formato de párrafo Un párrafo es, en principio, cada una de las divisiones del texto que comienza por una letra en mayúscula y termina con un punto y

MICROSOFT EXCEL 2007

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

CUADRO DE CONTROL CONTROLES ACTIVEX

Vamos a profundizar un poco sobre los distintos tipos de datos que podemos introducir en las celdas de una hoja de cálculo

100 ATAJOS DE TECLADO

Administración de la producción. Sesión 9: Hojas de cálculo (Microsoft Excel)

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

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

ACCESS XP. Objetivos. Duración. 64 horas. Contenidos. Módulo 1: Introducción. Parte 1 Bienvenida Certificado MOUS Resumen

Examen de nivel - Excel

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

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

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

Tema: Apuntes Programación Excel VBA. Indice

CAPÍTULO 1. ELEMENTOS DE EXCEL

EDUComputacion. Te ofrece el curso de:

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

Contenido. Samayra Niebles Velasquez

En esta lección vamos a ver más utilidades y opciones sobre la

Microsoft Office Word

Por qué usar VBA en Excel 2010?

Análisis y Manejo de datos en Excel 2013 con tablas, funciones y tablas dinámicas

Ejercicios sobre Objetos Libros:

Unidad 5. Tablas. La celda que se encuentra en la fila 1 columna 2 tiene el siguiente contenido: 2º Celda

UNIDAD 1. writer PRIMEROS PASOS. CURSO: LibreOffice

Tutorial de MuseScore, editor de partituras Primeros pasos

MICROSOFT EXCEL 2010

Microsoft PowerPoint 2013 (Completo)

Programación en Visual Basic Ricardo Rodríguez García

Seleccionamos el programa Excel. Nos aparece la pantalla del programa

PAQUETE MICROSOFT 2010 COMPLETO

Microsoft Excel 2010 Completo + Profesional

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

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

INSTITUCION EDUCATIVA MANUEL ANGEL ANACHURY AREA: TECNOLOGIA E INFORMATICA

Administración de la producción. Sesión 4: Procesador de Texto

MS-Excel 2007, Intermedio Avanzado (30 horas)

Tema: Introducción al IDE de Microsoft Visual C#.

PASOS PARA INGRESAR A WORD 2007

MICROSOFT POWERPOINT 2007

UNIVERSIDAD METROPOLITANA LATIN CAMPUS GUÌA DE ESTUDIO Y EVALUACIÒN. Informática General IV- POWER POINT TEXTO ELECTRÓNICO GRATUITO EDITADO POR UMLA

Tema: Excel Formulas, Funciones y Macros

FORMATO CONDICIONAL EN EXCEL

Excel 2007 Avanzado Revisión 1

HOJAS DE CÁLCULO CONTROLES, MACROS, VBA Y FORMULARIOS EN MS EXCEL. Excel 1

TABLAS WORD La tercer opción es usar el vínculo Dibujar Tabla, aquí se dimensiona la tabla dibujándola con el mouse

Una base de datos de Access puede estar conformada por varios objetos, los más comunes son los siguientes:

TUTORIAL SOBRE HOJAS DE CALCULO

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

Funciones Básicas de la Hoja de Cálculo

INTRODUCCIÓN AL MANEJO DE CARPETAS Y ARCHIVOS. Edublogg.wordpress.com. Caeiro Fábregas - Pérez

MICROSOFT WORD 2016 Básico

CREACIÓN Y MODIFICACIÓN DE TABLAS

Macros en Excel 2007

MICROSOFT POWERPOINT 2010

FORMACIÓN PRÁCTICA: Al propio ritmo de aprendizaje, sin condicionantes de grupo y atendido personalmente por un profesorado especializado.

TUTORIAL PARA CONSTRUIR EL DIAGRAMA DE FASES DE UNA SUSTANCIA

Ejercicio corto. Ejercicio corto. Ejercicio corto. Lección 1: Introducción a Word. Lección 2: Modificaciones de documentos

Teclas de función para LibreOffice Writer

IMPRESIÓN Y CONECTIVIDAD

Ficha Revisar. Grupo Revisión

Manual avanzado Excel 2010

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

Fundamentos de Word. Identificar los elementos de la interfaz de usuario que puede usar para realizar las tareas básicas.

GUÍA DE ESTILO EN JAVA

EJERCICIO 18 DE WORD. ACTIVIDAD: crea las tablas que se muestran a continuación, siguiendo los procedimientos

Escuela Normal Superior Río de Oro (Cesar)

TECNOLOGÍA E INFORMÁTICA

Una fórmula relaciona valores o datos entre sí a través de

Manejo de Filas, Columnas, Celdas y Rangos

Curso de Excel CURSO DE

POWER POINT. Ing. Luis Enrique García Espinoza

1 CREANDO SOLUCIONES A MEDIDA

LABORATORIO Nº 5 FORMULARIOS EN EXCEL

índice MÓDULO 1: PowerPoint XP 1ª Parte Herramientas de Comunicación: PowerPoint XP TEMA 1. Primeros Pasos TEMA 2. La Plantilla y sus Componentes

INFORMÁTICA Y COMUNICACIONES

Programación con VBA Excel

de la parte inferior izquierda de la ventana, excepto para el caso de la Presentación preliminar que se activa desde el menú Archivo o desde el botón

Excel 2013 Completo. Duración: Objetivos: Contenido: 80 horas

Protección de un documento Excel CEC-EPN

MICROSOFT EXCEL 2016 Intermedio

9.1. Insertar filas en una hoja

Manual de Windows XP Copyleft - Jorge Sánchez 2005

Competencias TIC para profesionales Del Siglo 21

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

Ordenador local + Servidor Remoto

Todas las tareas que se realizan en un computador implican el uso de archivos y carpetas.

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

Transcripción:

Contenido Introducción a VBA ejemplo 01-Macro prueba 1.xlsm... 2 Ventana de Visual Basic para Excel Alt+F11... 2 Se puede proteger un Proyecto... 3 Propiedades del libro de Macros Ejemplo Ver en la hoja de Excel el Envío de correo.... 4 Editor de Código... 5 Examinador de Objetos... 7 Ventana Inmediato... 9 Otro ejemplo de código 01-VBA.xlsm... 9 Módulos... 10 Importar y exportar código VBA... 10 Procedimientos:... 10 Declaraciones de procedimientos:... 11 Llamar a un procedimiento... 13 Llamar a una función VBA en una fórmula Excel... 13 Reglas de escritura del código... 14 Comentarios:... 14 Carácter de continuación:... 14 Sangrías... 14 Nombres de procedimientos, variables y constantes:... 14 Añadir un botón en la barra de herramientas a la macro:... 15 Se puede añadir una combinación de teclas a la macro una vez creada desde:... 16 1

Introducción a VBA ejemplo 01-Macro prueba 1.xlsm Ventana de Visual Basic para Excel Alt+F11 Ventana de Proyectos, Ver> Explorador de Proyectos En esta ventana aparece el Editor de Código, pero se puede ver también el Examinador de Objetos, la Ventana de Inspección, etc Ventana de Propiedades, Ver> Ventana de Propiedades Opciones para ver diferentes ventanas 2

Se puede proteger un Proyecto Botón derecho sobre el Proyecto, o cualquiera de sus elementos, y Propiedades de VBA > Protección. 3

Propiedades del libro de Macros Ejemplo Ver en la hoja de Excel el Envío de correo Un ejemplo de propiedades es EnvolopeVisible, de esta forma en la hoja de cálculo se añaden los elementos para enviarla por correo. 4

Editor de Código Editor de Código Verde: Comentarios Azul: Palabras e instrucciones de VisualBasic Negro: Objetos y Variables, código Rojo: Errores instrucción escrita de forma incorrecta Acceso directo a la Macro o Función La línea de separación indica las distintas secciones de códigos formando macros o funciones. 5

Herramientas > Opciones, para ver las posibilidades de configuración. Formato del editor para seleccionar los colores y atributos con que deben aparecer los diferentes elementos sintácticos en el código. También se puede activar la Lista de Propiedades y Métodos y Lista de Constantes con Ctrl+J o Ctrl+Barra Espaciadora 6

Examinador de Objetos Para abrir el Examinador de Objetos pulsa F2 o Ver> Examinador de Objetos, también están las opciones Copiar y Pegar Lista de Objetos disponibles Propiedades y métodos de Objetos disponibles Ejemplos de Elementos Globales a los cuales se puede hacer referencia sin necesidad de poner nombre de objeto delante. ActiveCell:es una propiedad que sólo puede leerse, se puede recuperar su contenido pero no modificarlo, (Sólo lectura) hace referencia a la celda activa. Propiedad de Range. Selection: propiedad similar a la anterior que hace referencia a la selección actual, celda o rango. Propiedad Objeto. ActiveWorkBook: libro que está activo, propiedad Workbook que representa a un libro con todos sus componentes. Woksheets: propiedad Workbook, es un objeto que contiene a otros, en este caso la colección de hojas que contiene un libro. Name: en una propiedad existente en casi todos los objetos, en el caso de la propiedad Name del objeto Worksheet se podrá modificar el nombre de la hoja, 7

Un ejemplo demacro podría ser dibujar un recuadro a las celdas activas. Para eso escribe e siguiente código: Sub Recuadro() Selection.BorderAround xlcontinuous End Sub Es una macro con una sola sentencia Sub y End marcan el inicio y fin. Además utilizamos la propiedad Selection, un método BorderAround y una parámetro xlcontinuous, que indica el tipo de línea, grosor, etc. Este es un procedimiento que aunque puede actuar como una macro, se le puede añadir una combinación de teclas desde el botón de Macros o Alt+F8 en Opciones. 8

Ventana Inmediato Para abrir la Ventana de Inmediato pulsa Ctrl+G o Ver>Ventana Inmediato Se suele usar para ejecutar comandos de inmediato, sentencias aisladas, es útil para comprobar el efecto que tiene la modificación de una propiedad o invocación a un método. Puedes Copiar y pegar el código en el editor. Para cambiar el nombre de una hoja P.Ejplo. Escribe el nombre de la hoja y la propiedad Name = nuevo nombre. Otro ejemplo de código 01-VBA.xlsm P.Ejplo.?activesheet.range( a2 ) pregunta por el valor de esa celda o valor de variable? precio Un procedimiento que cada vez que se abra un libro que lo contiene, cambie los nombres de todas las hojas. Para ejecutar una macro donde esté el cursor pulsar F5 para todo el ' Procedimiento de apertura procedimiento. del libro Para ejecutar el código línea a línea F8 ' Enero 2007 Private Sub Workbook_Open() ' La primera hoja tendrá el número 1 Numero = 1 ' Recorremos todas las hojas del libro For Each Hoja In Worksheets ' Cambiando su nombre Hoja.Name = "Hoja" & Numero ' sumamos uno al número Numero = Numero + 1 Next ' siguiente hoja End Sub 9

Módulos El código VBA asociado a un libro está agrupado en un proyecto que contiene varias carpetas. Microsoft Excel Objetos: contiene un módulo de clase asociado al libro del proyecto, llamado por defecto ThisWorkbook y un módulo de clase por cada una de las hojas de cálculo u hojas de gráfico. En estos módulos de clase se encuentran los procedimientos de eventos asociados al libro o a las hojas. Carpeta Formularios: contiene los formularios del proyecto y el código VBA. Carpeta Módulos: agrupa los diferentes módulos compuestos por uno o varios procedimientos, que pueden ser llamados desde cualquier procedimiento del proyecto. Carpeta Módulos de clase: contiene módulos de clase usados para la creación de nuevas clases de objetos. Los módulos de clase se utilizan especialmente para la escritura de los procedimientos de eventos asociados a los objetos Application y Chart. Importar y exportar código VBA Menú Archivo> Importar o Exportar Archivo. Las extensiones del archivo son: Módulos de clase.cls Formularios.frm Módulos.bas Procedimientos: Los procedimientos son subprogramas que permiten descomponer una tarea de programación compleja en un conjunto de tareas más breves y simples, de forma que permiten organizar el código dentro de los módulos para obtener un código de mantenimiento más fácil y simple de utilizar. Menú >Insertar> Procedimiento Procedimiento Sub: por subrutina, son subprogramas o procedimientos Sub. Function: para funciones, devuelven un valor resultado de un cálculo, el resultado se devuelve a través del nombre de la función. Property: procedimientos de propiedad. 10

Public-Publico: se puede llamar desde todos los módulos de todos los proyectos Excel, si no se indica nada el procedimiento es público. Private: sólo se pueden llamar desde un procedimiento dentro de un mismo módulo. Para pasar de un procedimiento a otro pulsa Ctrl+Flecha arriba-abajo y para ejecutarlo F5 o Hay dos tipos de procedimientos Sub: con F8 se ejecuta línea a línea -Procedimiento general, se declara en un módulo y la llamada a este procedimiento se define en el código. -Procedimiento asociado a un evento, se ejecuta ante ciertos eventos de un objeto, es decir cuando se produce un evento asociado. Declaraciones de procedimientos: Sintaxis de un procedimiento Sub, después de Sub viene el nombre del procedimiento o macro. Por ejemplo Sub Maco_Prueba() os paréntesis hay que ponerlos. [Private Public Friend] [Static] Sub NomProc() ([lista argumentos]) End Sub <secuencia de instrucciones> 11

12

Sintaxis de un procedimiento Funcion [Private Public Friend] [Static] Function NomProc([lista argumentos]) [As <type>] <secuencua de instrucciones> End Function Llamar a un procedimiento Si se indica la palabra Call, se beben colocar la lista de argumentos entre paréntesis. [Call] Nomproc [lista de argumentos] Llamar a un procedimiento de otro módulo. [Call] NomMóduloNomproc [lista de argumentos] Llamar a un procedimiento de otro libro. Application.Run NomLibro!NomMódulo.NomProcedimiento Por ejemplo Application.Run Ventas.xls!ThisWorkbook.Salir_Apli Llamar a una función VBA en una fórmula Excel Todas las funciones Public estarán disponibles en el asistente para funciones de Excel, categoría Funciones: Definidas por el usuario. EJEMPLO: Vamos a crear una función que calcule la edad de una persona a partir de su fecha de nacimiento. Crea la función dentro de un Módulo. 13

Function CalcEdad(fechanac As Date) Dim zfecha As Date ' Calcula la edad en función de la fecha de nacimiento CalcEdad = Abs(DateDiff("YYYY", fechanac, Date)) zfecha = DateAdd("YYYY", CalcEdad, fechanac) If zfecha > Date Then CalcEdad = CalcEdad - 1 End Function Archivo: Crear una Función Propia con VBA(CalcEdad).xlsm Function Comision(MiNum) Comision = MiNum * 0.06 End Function Archivo: Crear una Función Propia con VBA(Comisión).xlsm Reglas de escritura del código Comentarios: Los comentarios permiten documentar el código VBA para hacerlo más legible REM comentario o ' comentario (comilla simple en tecla?) Carácter de continuación: Para escribir diferentes líneas en una instrucción VBA usa un guión bajo _ Sangrías Las sangrías o tabulaciones permiten una mejor legibilidad del código. Es importante usarlo en las estructuras de control sobre todo si hay instrucciones anidadas, por ejemplo con If. Pulsa Tab para generar y Mayus+Tab para retroceder, puedes modificar el tamaño en: Herramientas>Opciones>Editor>Ancho de tabulación. Nombres de procedimientos, variables y constantes: Debes respetar las reglas: 14

1º El primer carácter debe ser una letra. 2º No se diferencias mayúsculas y minúsculas, se aceptan acentos. 3º No se pueden usar nombres reservados a VB. 4º No se usa punto, espacio, ni, $,# y @. 5º No puede tener más de 255 caracteres. 6º Para procedimientos Funtion, no se usa un nombre igual a una referencia a una celda. 7º No se indican varias veces los mismos nombre en variables y constantes en un mismo nivel de alvance. IMP. Los parámetros de una función de VBA se separan por comas no por punto y coma como en Excel. Añadir un botón en la barra de herramientas a la macro: Se puede crear un botón en la barra de herramientas del programa, para ello puedes hacerlo desde las Opciones: 15

Se puede añadir una combinación de teclas a la macro una vez creada desde: Programador>Macros, selecciona la macro y Opciones 16

17