excel macros - lsc.fie.umich.mxlsc.fie.umich.mx/~pedro/maestria/excelmacros.pdf · a paso escritos...
TRANSCRIPT
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Excel Macros
Pedro Chavez Lugomailto:[email protected]
webpage:http://lsc.fie.umich.mx/pedro
17 de enero de 2014
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
1 Introduccion
2 Tipos de Dato y Variables
3 Operadores
4 Ejemplos
5 Funciones de Entrada, Salida, Conversion y Matematicas
6 Ejercicios propuestos
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Introduccion
Microsoft Excel es una herramienta muy eficaz que se puede usarpara manipular, analizar y presentar datos.
A veces, no obstante, a pesar del amplio conjunto de caracterısticasque ofrece la interfaz de usuario (UI) estandar de Excel, es posibleque se desee encontrar una manera mas facil de realizar una tarearepetitiva y comun, o de realizar alguna tarea no incluida en lainterfaz de usuario.
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Introduccion
VBA funciona mediante la ejecucion de macros, procedimientos pasoa paso escritos en Visual Basic. Aprender a programar podrıa parecerintimidante, pero con algo de paciencia y algunos ejemplos.
La razon mas frecuente por la cual se usa VBA en Excel es paraautomatizar tareas repetitivas.
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Introduccion
Por ejemplo, suponga que tiene docenas de libros con docenas dehojas de calculo y necesita realizar cambios en cada uno de ellos.
Los cambios podrıan ser tan simples como aplicar formato nuevoa algun rango fijo de celdas, o bien tan complejos como buscaralgunas caracterısticas estadısticas de los datos en cada hoja, elegirel mejor tipo de grafico para mostrar datos con esas caracterısticasy, a continuacion, crear y dar formato al grafico en consecuencia.
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Introduccion
No obstante, VBA no es util solo para tareas repetitivas. Tambienpuede usar VBA para crear nuevas funcionalidades en Excel (porejemplo, puede desarrollar nuevos algoritmos para analizar datos y,a continuacion, usar las funcionalidades de graficos de Excel paramostrar los resultados) y realizar tareas que integren Excel con otrasaplicaciones de Office, etc.
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Introduccion
De hecho, de todas las aplicaciones de Office, Excel es la mas usadacomo algo similar a una plataforma de desarrollo general. Ademasde todas las tareas obvias que implican listas y contabilidad, losprogramadores usan Excel en una amplia variedad de tareas, desdevisualizacion de datos hasta prototipos de software.
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Introduccion
Afortunadamente, las aplicaciones de Office, como Excel, tienen Vi-sual Basic para Aplicaciones (VBA), un lenguaje de programacionque brinda la posibilidad de ampliar dichas aplicaciones.
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Pestana Programar en Cinta de Opciones
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Pestana Programar
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Ventana Macro
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Partes de la Macro
Nombre de la macroInicio de macro
Fin de macro
Cuerpo de macroInstrucciones}
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Comentarios en la Macro
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Metodo MsgBox y ejecucion de Macro
Ejecutar macro
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Tipos de Datos de VBA
Tipo de Tamano Rango DescripcionDato en bitsByte 1 Byte 0 a 255 Enteros positivosBoolean 2 Bytes True, False Valores BooleanosInteger 2 Bytes -32,768 a 32,767 Enteros positivos y negativosLong 4 Bytes -2,147,483,648 a 2,147,483,647 Enteros positivos y negativosSingle 4 Bytes +/-3.402823E38 a +/-1.401298E-45 Presicion simpleDouble 8 Bytes +/-1.79769313486232E308 a +/-4.94065645841247E-324 Presicion dobleCurrency 8 Bytes -922,337,203,685,477.5808 a 922,337,203,685,477.5807 Manejo de dineroDate 8 Bytes Manejo de fechaString 0 a 63K 2 billones de caracteres Cadena de caracteresVariant 16 Bytes Dato generico
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Variable
Una variable es un elemento que permite almacenar datos tempo-ralmente en un procedimiento, modulo o libro de trabajo.
Reglas para definir nombres de variables
- Debe iniciar con una letra y puede contener mas letras onumeros.
- Longitud maxima 255 caracteres.
- No se pueden utilizar palabras reservadas de Excel (Sheet,worksheet, etc.).
- No se puede utilizar el espacio en blanco, para separarpalabras utilizar .
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Declaracion de Variables
Para declarar una variable se utiliza la palabra Dim (Dimension)seguido del nombre de la variable, la palabra AS y el tipo de datopara la variable.
Ejemplos
- Dim uno AS Integer
- Dim dos AS Currency
- Dim a AS Byte
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Modificar la macro para que imprima los valores de todas lavariables. Utilizar la constante vbCrLf para obtener salto de lınea yretorno de carro.
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Operadores Aritmeticos
Operador Significado Ejemplo
ˆ Operador potencia 23
* Multiplicacion 3*2
/ Division real 3/2
\ Cociente division entera 3\2
Mod Modulo 3 Mod 2
+ Suma 3+2
- Resta 3-2
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Operadores de String (Cadena)
Operador Significado Ejemplo
& Operador concatenacion “Hola”&“ ”&“Mundo”
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Operadores de Relacion o comparacion
Operador Significado
= Operador de igualdad
<> Operador diferente
< Menor que
> Mayor que
<= Menor o igual que
>= Mayor o igual que
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Operadores Logicos
Operador Significado
And Operador And (Y)
Or Operador Or (o)
Not Operador negado
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Tabla de verdad And
A B A And B
False False False
False True False
True False False
True True True
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Tabla de verdad Or
A B A Or B
False False False
False True True
True False True
True True True
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Tabla de verdad Not
A Not A
False True
True False
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Operadores Aritmeticos
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Operadores de Relacion
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Operadores Logicos
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Entrada de datos
El metodo InputBox muestra un cuadro de dialogo para la entradade datos y regresa el dato ingresado.
Metodo InputBox
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Funcion InputBox
Muestra un mensaje en un cuadro de dialogo que el usuario escribaun texto o haga clic en un boton y devuelve un tipo String con elcontenido del cuadro de texto.
Sintaxis
InputBox(prompt[,title][,default][,xpos][,ypos][,helpfile, context])
Argumento Descripcion
prompt Cadena impresa como mensajetitle Cadena impresa en la barra de titulo (opc.)default Cadena del valor predeterminado (opc.)xpos Numero de la distancia en sentido horizontal (opc.)ypos Numero de la distancia en sentido vertical (opc.)helpfile Cadena del nombre de archivo de ayuda (opc.)context Numero de contexto de ayuda (opc.)
En caso de no especificar xpos, ypos el cuadro de dialogo es cen-trado.
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Ejemplo funcion InputBox
Dim Mensaje, Tıtulo, ValorPred, MiValor
Mensaje="Introduzca un numero del 1 a 3"
Tıtulo="Demostracion de InputBox"
ValorPred="1"
MiValor=InputBox(Mensaje, Tıtulo, ValorPred)
MiValor=InputBox(Mensaje, Tıtulo, , , , "DEMO.HLP", 7)
MiValor=InputBox(Mensaje, Tıtulo, ValorPred, 100, 100)
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Ejemplo funcion InputBox
Dim Mensaje, Estilo, Tıtulo, Ayuda, _
Ctxt, Respuesta, MiCadena
Mensaje = "¿Desea continuar?"
Estilo = vbYesNo + vbCritical
Tıtulo = "Demostracion de MsgBox"
Ayuda = "DEMO.HLP"
Ctxt = 1000
Respuesta = MsgBox(Mensaje,Estilo,Tıtulo,Ayuda,Ctxt)
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Funcion MsgBox
Muestra un mensaje en un cuadro de dialogo, espera a que el usuariohaga clic en un boton y devuelve un tipo Integer correspondiente alboton elegido por el usuario.
Sintaxis
MsgBox(prompt[,buttons][,title][,helpfile, context])
Argumento Descripcion
prompt Cadena impresa como mensajebuttons Numero y tipo de botonestitle Cadena impresa en la barra de titulo (opc.)helpfile Cadena del nombre de archivo de ayuda (opc.)context Numero de contexto de ayuda (opc.)
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Constante buttons
Constante Descripcion
VbOKOnly Boton AceptarVbOKCancel Botones Aceptar y CancelarVbAbortRetryIgnore Botones Anular, Reintentar e IgnorarVbYesNoCancel Botones Sı, No y CancelarVbYesNo Botones Sı y NoVbRetryCancel Botones Reintentar y CancelarVbCritical Icono de mensaje crıticoVbQuestion Icono de pregunta de advertenciaVbExclamation Icono de mensaje de advertenciaVbInformation Icono de mensaje de informacion
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Valores devueltos
Constante Valor Descripcion
vbOK 1 AceptarvbCancel 2 CancelarvbAbort 3 AnularvbRetry 4 ReintentarvbIgnore 5 IgnorarvbYes 6 SıvbNo 7 No
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
VBA Excel ofrece un conjunto de funciones para convertir datos deltipo cadena (String) a diferentes tipos de datos.
Funcion Retorna
CBool(expresion) BooleanCByte(expresion) ByteCCur(expresion) CurrencyCDate(expresion) DateCDbl(expresion) DoubleCInt(expresion) IntegerCLng(expresion) LongCSng(expresion) SingleCStr(expresion) StringCVar(expresion) Variant
El argumento obligatorio expre-
sion es cualquier expresion decadena o expresion numerica.
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Funciones Matematicas
Funcion Significado
Abs(numero) Valor absoluto
Sqr(numero) Raız cuadrada
Rnd([numero]) Numero aleatorio
Int(numero) Parte entera
Cos(numero) Valor Coseno
Sin(numero) Valor Seno
Tan(numero) Valor Tangente
Pedro Chavez Lugo Excel Macros
IntroduccionTipos de Dato y Variables
OperadoresEjemplos
Funciones de Entrada, Salida, Conversion y MatematicasEjercicios propuestos
Ejercicios propuestos
- Ejercicios macros.
Pedro Chavez Lugo Excel Macros