mailxmail - Cursos para compartir lo que sabes Visual Basic. Fórmulas personalizadas para Excel Autor: David [ http://www.mailxmail.com/curso-visual-basic-formulas-personalizadas-excel] Descubre miles de cursos como éste en www.mailxmail.com 1 mailxmail - Cursos para compartir lo que sabes Presentación del curso Visual Basic para la creación de fórmulas Excel. Este curso de informática tiene una intención práctica concreta: manipulación de la fórmula Índice de Excel. Manejaremos fórmulas que pueden ser personalizadas por el usuario según su conveniencia. Y así, presentaremos las líneas de código para manipulación de algunas funciones de Excel, esta potente herramienta de Micrsoft Office. Visita más cursos como este en mailxmail: [http://www.mailxmail.com/cursos-informatica] [http://www.mailxmail.com/cursos-ofimatica] ¡Tu opinión cuenta! Lee todas las opiniones de este curso y déjanos la tuya: [http://www.mailxmail.com/curso-visual-basic-formulas-personalizadas-excel/opiniones] Descubre miles de cursos como éste en www.mailxmail.com 2 mailxmail - Cursos para compartir lo que sabes 1. Excel. Fórmula índice. Manejo y uso [http://www.mailxmail.com/curso-visual-basic-formulas-personalizadas-excel/excel-formula-indice-manejo-uso ] 1. PRESENTACIÓN DEL CURSO En este curso analizaremos el desarrollo de visual Basic a través de creación de fórmulas específicamente para el uso de Excel; siendo más especifico, será para manipular la formula de índice de Excel. Combinándolas con otras formulas (creadas) la cuales servirán de referencia para entrada de datos (independientes) ya que éstas admiten campos específicos que asignamos (siendo éstos, numéricos o no). Más adelante se explicará. UNIDAD 1. Manejo y uso de la de la fórmula índice 1. Creamos una base de datos o Matriz de datos 2. Utilizamos la fórmula índice para obtener algún dato dentro de nuestra matriz de datos 3. Suponiendo que deseemos el dato de enero de 1981 tendremos que hacer lo siguiente: a) En una celda cualquiera (fuera de la base de datos o matriz) ponemos = INDICE b) Lo siguiente que pide es MATRIZ, NUM_FILA, NUM_COLUMNA. La fórmula se visualiza así: INDICE (MATRIZ, NUM_FILA, NUM_COLUMNA) c) Seleccionamos la matriz: d) Una vez seleccionada la matriz la referencia que pide es el número de fila y columna del área seleccionada de la matriz. e) Insertamos "1" a la fila y "1" a la columna, es decir, = índice (B3:D7, 1,1). f ) El resultado obtenido es 0.1267 g) Tenemos dentro de la matriz 15 datos distribuidos en 5 filas y 3 columnas. =ÍNDICE (MATRIZ, NÚMERO DE FILA, NÚMERO DE COLUMNA) =ÍNDICE (B3:D7, 1, 1) EL RESULTADO SERA EL SIGUIENTE ÍNDICE = 0.126 Desventajas: Si hacemos referencia a algún dato contenido dentro de la matriz de datos, es un tanto incomodo buscar un dato dentro de esa matriz, "un dato desconocido" y ubicarlo, pues, para ubicarlo tendríamos que contar el número de filas y luego el de columnas para encontrar tal dato especifico.Mientras que si definimos que en este caso el número de año sea el número de referencia de la fila y el mes sea el número de referencia de la columna, manipulamos la formula índice a nuestro beneficio. Descubre miles de cursos como éste en www.mailxmail.com 3 mailxmail - Cursos para compartir lo que sabes 2. Excel. Fórmulas personalizadas (1/2) [http://www.mailxmail.com/curso-visual-basic-formulas-personalizadas-excel/excel-formulas-personalizadas-1] 2. EL USO DE FÓRMULAS PERSONALIZADAS. ¿Qué son fórmulas personalizadas? Las fórmulas personalizadas son fórmulas que el usuario crea según el criterio del mismo, en base a los datos de entrada que permite ingresar, dando como resultado datos de salida que el usuario crea conveniente. ¿Para qué sirven? Para llevar a cabo cálculo o para manipulación de otras fórmulas. ¿En dónde son útiles? En las matemáticas y en aplicaciones de Excel (junto con otras de Excel) ¿Cómo las puedo crear? A través de visual Basic en Excel. El uso de fórmulas de EXCEL nos limita a ciertas características. Por ejemplo, índice nos impide la introducción de datos como el numero de año (1981,1982...etc.) y nombre del mes (Enero, Febrero, Marzo...Diciembre), para hacer referencia a la ubicación respecto a estos datos como son número de fila para el año y número de Columna para el mes. Ahora, para la creación de la fórmula cabe definir que una será una forma de manipular el número de referencia de las filas y otra para manipular el número de referencia de las columnas, definiéndolo según lo quiera el usuario. La fórmula creada para manipulación de filas se llama A y está definida con el número de año. Es decir, basándonos en la idea anterior de una matriz: Como dato inicial es 1981 le correspondería 1, a 1982 le correspondería 2, y así sucesivamente. (1981 = 1), (1982 = 2), (1983 = 3).....ETC, veamos el ejemplo: Si quisiera obtener el valor de ubicación en fila de 1981 en una celda ("P2"), fuera de la matriz, 1.- Introduciendo en la celda "O2" el valor de "1981" hiciera referencia al valor de posición dentro de la matriz como "1" en fila, mi formula seria =A (O2) A= año, O2= el valor del año ("1981"), recuerden "1981" es el primer valor de la matriz en fila. NOTA: Por cuestiones de simplicidad, mayor facilidad o entendimiento ("bueno así lo creo") decidí nombrar y crear la fórmula en referencia al dato que recoge, en este caso, nombrar la fórmula por su primer letra. A es la primera letra de Año, así que me tome la libertad de no llamar a la Formula Año sino simplemente A; además de que Excel tiene una fórmula llamada también AÑO y la formula no será interpretada por visual BASIC de forma correcta, y podría confundir al Usuario. Al final, cada quien decidirá cómo llamar a la fórmula según su conveniencia. Descubre miles de cursos como éste en www.mailxmail.com 4 mailxmail - Cursos para compartir lo que sabes 3. Excel. Fórmulas personalizadas. (2/2) [http://www.mailxmail.com/curso-visual-basic-formulas-personalizadas-excel/excel-formulas-personalizadas-2] La fórmula creada para manipulación de columnas se llama m y está definida con el número de mes. Es decir, basándonos en la idea anterior de una matriz: Como dato inicial es ENERO le correspondería 1, a FEBRERO le correspondería 2, y así sucesivamente. (ENERO = 1), (FEBRERO = 2), (MARZO = 3).....ETC, veamos el ejemplo: Esta fórmula serviría para manipular el número que hace referencia a las columnas. Si quisiera obtener el valor del ejemplo 1: en la celda ("P3"), fuera de la matriz, haría lo siguiente: 1.- Introduciendo en la celda "O3" el valor de "ENERO" hiciera referencia al valor de posición dentro de la matriz como "1" en columna, mi formula seria =m (o3) M= mes, O2= el nombre del mes ("ENERO"), recuerden "ENERO" es el primer valor de la matriz en columna. NOTA: Y de nuevo, por cuestiones de simplicidad, mayor facilidad o entendimiento decidí nombrar y crear la fórmula en referencia al dato que recoge en este caso nombrar la fórmula por su primera letra. m m es la primera letra de mes así que me tomé la libertad de no llamar a la Formula mes sino simplemente m ; además de que visual BASIC podría confundirlo con la formula MES de EXCEL o también podría confundir al usuario. La fórmula m sólo acepta los nombres de los meses en MAYÚSCULA. Es por la interpretación que le da visual BASIC. Descubre miles de cursos como éste en www.mailxmail.com 5 mailxmail - Cursos para compartir lo que sabes 4. Fórmula índice. Manipulación con las fórmulas personalizadas [ http://www.mailxmail.com/curso-visual-basic-formulas-personalizadas-excel/formula-indice-manipulacion-formulas-personalizadas] 3. MANIPULACIÓN DE LA FÓRMULA ÍNDICE CON LAS FÓRMULAS PERSONALIZADAS Ahora bien, entendiendo ya el uso de las fórmulas personalizadas, éstas servirán de base para manipular los valores de entrada. NOTA: Los valores de Salida o Resultante de las fórmulas personalizadas o creadas son los valores de entrada para manipular la formula de INDICE DE EXCEL, estos valores son dependientes pues cada vez que cambien el valor de O2. Ampliamos la matriz de B3:M12. Previamente conocido el uso de las fórmulas personalizadas, procedemos a aplicarlas en la fórmula ÍNDICE de EXCEL para la búsqueda de datos personalizada de Excel. El análisis de la fórmulas personalizada nos permite saber la posición en fila y columna estas referencia numéricas de posición en la matriz son buscadas o examinadas por las fórmulas. Descubre miles de cursos como éste en www.mailxmail.com 6 mailxmail - Cursos para compartir lo que sabes 5. Fórmula índice como fórmula unificada [ http://www.mailxmail.com/curso-visual-basic-formulas-personalizadas-excel/formula-indice-como-formula-unificada] 4. INTEGRACIÓN DE LAS FÓRMULAS PERSONALIZADAS DENTRO DE LA FÓRMULA ÍNDICE COMO FÓRMULA UNIFICADA. Ahora, en este caso, en lugar de tener otras dos celdas más en uso para el análisis del resultado de la formula, ésta tan sólo se introduce ya el resultado en sí dentro de la formula ÍNDICE sin mediaciones de otras celdas (estas celdas donde obtenemos el resultado de las formulas personalizadas solo para que sean analizados los resultados de la formula). De ahora en adelante incluiremos las formulas personalizadas dentro de la formula ÍNDICE. La formula principal será la de ÍNDICE DE EXCEL. Introducimos para manipular la formula índice primero la matriz de datos de B3 a M37 (B3:M37), después la formula A (introduce la celda donde está ubicado el año) y, por último, la formula m (introduce la celda donde está ubicado el nombre del mes), = ÍNDICE (MATRIZ, NÚMERO DE FILA, NUMERO DE COLUMNA) = ÍNDICE (MATRIZ, A (celda donde está ubicado el año), m (celda donde está ubicado el nombre del mes)) = ÍNDICE (B3:M37, A (O3), m (O4)) Bueno, hasta aquí creo se ha comprendido el uso y manipulación de la fórmulas personalizadas. A continuación veremos su construcción de manera general. Descubre miles de cursos como éste en www.mailxmail.com 7 mailxmail - Cursos para compartir lo que sabes 6. Crear fórmulas Excel. Función A(t) [http://www.mailxmail.com/curso-visual-basic-formulas-personalizadas-excel/crear-formulas-excel-funcion-t] 5. VISUAL BASIC Y LA CREACIÓN DE FÓRMULAS PERSONALIZADAS. Como ya habíamos dicho antes, las formulas personalizadas son creadas por el usuario. Ahora les mostrare la formula A. Veamos cómo crear la primera. 1. Oprimes ALT + F11 se abre visual Basic de EXCEL. 2. Una vez abierto vas al menú insertar y luego la pestaña módulo. 3. Del lado izquierdo aparece el módulo que creaste (Módulo1). 4. Seleccionas das clic derecho y das clic en ver código. 5. Insertas tus líneas de código. Línea de código para fórmula A. Función A (t) Dim año año = t If año = 1981 Then t = 1 A = t ElseIf año = 1982 Then t = 2 A = t ElseIf año = 1983 Then t = 3 A = t ElseIf año = 1984 Then t = 4 A = t ElseIf año = 1985 Then t = 5 A = t ElseIf año = 1986 Then t = 6 A = t ElseIf año = 1987 Then t = 7 A = t ElseIf año = 1988 Then t = 8 A = t ElseIf año = 1989 Then t = 9 A = t ElseIf año = 1990 Then t = 10 A = t ElseIf año = 1991 Then t = 11 A = t ElseIf año = 1992 Then t = 12 A = t ElseIf año = 1993 Then t = 13 A = t ElseIf año = 1994 Then t = 14 Descubre miles de cursos como éste en www.mailxmail.com 8 mailxmail - Cursos para compartir lo que sabes A = t ElseIf año = 1995 Then t = 15 A = t ElseIf año = 1996 Then t = 16 A = t ElseIf año = 1997 Then t = 17 A = t ElseIf año = 1998 Then t = 18 A = t ElseIf año = 1999 Then t = 19 A = t ElseIf año = 2000 Then t = 20 A = t End If End Function Descubre miles de cursos como éste en www.mailxmail.com 9 mailxmail - Cursos para compartir lo que sabes 7. Crear fórmulas Excel. Función M(x) [http://www.mailxmail.com/curso-visual-basic-formulas-personalizadas-excel/crear-formulas-excel-funcion-m] Fórmula m para VISUAL BASIC de EXCEL Function M(x) Dim mes As String mes = x If mes = "ENERO" Then x = 1 M = x ElseIf mes = "FEBRERO" Then x = 2 M = x ElseIf mes = "MARZO" Then x = 3 M = x ElseIf mes = "ABRIL" Then x = 4 M = x ElseIf mes = "MAYO" Then x = 5 M = x ElseIf mes = "JUNIO" Then x = 6 M = x ElseIf mes = "JULIO" Then x = 7 M = x ElseIf mes = "AGOSTO" Then x = 8 M = x ElseIf mes = "SEPTIEMBRE" Then x = 9 M = x ElseIf mes = "OCTUBRE" Then x = 10 M = x ElseIf mes = "NOVIEMBRE" Then x = 11 M = x ElseIf mes = "DICIEMBRE" Then x = "" M = x End If End Function NOTA: Con este capítulo hemos llegado al final del curso. Descubre miles de cursos como éste en www.mailxmail.com 10 mailxmail - Cursos para compartir lo que sabes Visita más cursos como este en mailxmail: [http://www.mailxmail.com/cursos-informatica] [http://www.mailxmail.com/cursos-ofimatica] ¡Tu opinión cuenta! Lee todas las opiniones de este curso y déjanos la tuya: [http://www.mailxmail.com/curso-visual-basic-formulas-personalizadas-excel/opiniones] Descubre miles de cursos como éste en www.mailxmail.com 11