miércoles, 4 de abril de 2012

Ejemplos de usos de la función indirecto

¿A quién no le ha pasado que le han entregado un archivo pdf o de texto y uno copia esos datos y los pega en excel le quedan todos en una sola columna como en el siguiente ejemplo?

Para este caso existe una función que ayuda a simplificar la vida y esta es la función indirecto

La función indirecto es aquella función que permite hacer una referencia sobre otra celda. Puede que uno en un inicio diga: ¿Y para que me podría servir llamar a otra celda desde una celda? ... pero esta función tiene más utilidad de lo que se piensa.

La definición sobre función, para que sirve y algunos casos se encuentra en un artículo de este blog escrito por dos alumnas el semestre anterior:

http://www.computacionynegocios.info/2011/09/conociendo-la-funcion-indirecto.html

Para que quede más claro aún su uso, pueden ver el siguiente video: http://www.youtube.com/watch?v=kIFdXz1t_bw

Ustedes se preguntarán ¿Y cuál será el aporte de este post? El aporte será añadir dos usos más a los expuestos anteriormente, además del archivo excel que se usó (y con el que aprendí a usar esta función) para generar los ejemplos el cual contiene además ejemplos similares a los expuestos por las alumnas el semestre anterior.

La función es muy útil en el caso expuesto al inicio de este post ya que ayuda a organizar la información de un archivo pdf o archivo de texto. Para esto, nos posicionamos en otra columna, ejemplo en la columna C y fila 1 y escribimos =INDIRECTO("A"&(FILA()*6-5)) ¿Por qué esto y no por ejemplo otros números o letras? Esto es porque si observamos los datos, sale un listado de nombres, ambos nombres y ambos apellidos por persona un número pequeño que podrían ser los días de pago y un número grande que podría ser el sueldo de la persona por lo que la tabla contendría 6 columnas. Entonces primero escribimos en la función indirecto la letra “A” ya que en la columna A están todos los datos y luego eso lo concatenamos a FILA()*6-5. La función fila arroja el número de la fila que corresponda a la celda que hacemos referencia. Si escribimos solo = FILA()*6-5 en la celda C1 nos arrojará 1 que corresponde a donde dice “José”, si lo hacemos en la celda C2 nos arrojará 7 y si vemos, y como la tabla tenía 6 datos significa que el dato 7 es el nombre de una segunda persona, en este caso comenzarían los datos de “María”.

Luego, hacia el lado, la celda D1 escribimos FILA()*6-4, en la columna E le restamos 3, luego en la F solo 2, en la columna G le restamos 1 y en la celda H dejamos solo FILA()*6. Y si esas formulas las copiamos hacia abajo nos dará la tabla con los datos ordenados :).


Otra gran utilidad que posee la función indirecto es la de poder obtener datos
de tablas de dos dimensiones, esta son las que tienen información en su centro y tanto en las columnas como en las filas datos al cual referenciar. Un ejemplo de esto es por ejemplo la tabla con los valores del dólar. Si vamos a http://www.sii.cl/pagina/valores/uf/uf2012.htm. Al pegar los datos en el Excel generamos una tabla que contenga el día, mes y valor de la U.F. Ojo que los datos de día y mes que introduciremos serán solo el número.

Ahora el truco es el siguiente. Al lado de la celda en donde colocamos el día y el mes debemos escribir al lado un buscav() donde este obtendrá datos de dos tablas auxiliares que debemos generar. La primera, al de días, es una tabla que tendrá los 31 días del mes y al lado el número de la fila donde está en la tabla de la UF. Por ejemplo la tabla parte con el día 1 en la fila 8, pro lo tanto sería la tabla 1-8, 2-9, etc. Para el caso de los meses debe tener 3 columnas la tabla, en la primera el número del mes, luego el nombre de ese mes tal como aparece en la tabla y luego la letra de la columna en la que está. En este ejemplo enero está en la columna b, entonces sería 1-ene-b. Luego, el buscarv() anteriormente señalado busca el número que introducimos en esas tablas y nos arroja el valor de la fila en el caso del día y de la columna en caso del año donde está ese dato.

Y ahora para obtener el dato es donde es de mucha utilidad la función indirecto, ya que solo debemos ir donde está la celda para poner el dato del valor de la U.F, en este caso la celda marcada H8 y escribimos =INDIRECTO(I7&I6), en donde I7 corresponde al dato que arroja el buscarv() de la tabla de los meses (así nos da la letra de columna) y el I6 que es el resultado del buscarv()de la tabla días (así nos da el número de la fila) la fila del día Con ello, ya estamos listos! podemos escribir el día y mes y nos aparecerá el valor de la U.F que corresponde :)

Por otro lado, esta función tiene un uso fuera del libro que sería el que puede hacer referencia a otro libro ( y se haría igual que como referenciar una hoja dentro del mismo libro) siempre y cuando ambos este abiertos. Por ejemplo se me ocurriría que se podría tener un excel solo con una interfaz que uno pueda hacer una o varias consultas y esta mediante esta formula se obtengan los datos del otro libro, y bueno ese llamado al otro libro podría ser mediante una macro también ,pero como aún macros no lo vemos en el curso, nos podría quedar esto como un desafío futuro :)

Si quieres aprender o practicar casos con esta formula te invito a descargar el archivo que utilicé para aprender a usar la función indirecto la cual contiene 6 diferentes usos:

DESCARGAR EXCEL

Y también los invito a visitar:

- http://trucosdeexcel.com/2010/01/funcion-indirecto/
Este es un ejemplo que usa la función indirecto con listas desplegables.

- http://www.xperimentos.com/2008/02/26/funcin-indirecto-sencillo-resumen-con-datos-de-diferentes-hojas-excel/
Este es un ejemplo de usar la función para resumir tablas de datos

- Para los que aprenden mejor viendo videos, el siguiente video explica la esencia de lo que significa la función indirecto, con ello podemos entender como funciona y que usos le podríamos dar: http://www.youtube.com/watch?v=kIFdXz1t_bw

- Este otro link es de un video que explica claramente para que sirve esta función, va mostrando paso a paso un caso aplicado con lista desplegable: http://www.youtube.com/watch?v=ZfyTQ4gU50U

Gracias por leer ;)

1 comentario:

  1. oie que bueno! por dios que era problema esto de que te salen los datos hacia abajo, del terror ordenarlos, y con esto es super sencillo!!!
    me gustó el ejemplo de la UF, en el trabajo cuando estaba haciendo la proyección de este año usaba a cada rato el valor y había que actualizarlo día a día, aquí vi otra forma de hacerlo.

    ResponderEliminar