Una funcion muy poco conocida y utilizada. La sintanxis no es tan sencilla de comprender y, generalmente, su uso se circunscribe a trabajos de mediana/alta complejidad, que excede las tareas habituales de un usuario promedio.
Pero no por ello vamos a dejar de verla, ya que se trata de una herramienta muy poderosa, diseñada principalmente para la generación de "rangos dinámicos".
Sintaxis:
=DESREF(referencia, filas, columnas, [alto], [ancho])
esta función nos devuelve la referencia que hacemos a un rango, que puede ser tanto una unica celda como un conjunto de ellas.
Veamos como aclaro esa explicación breve y dudosa, aunque no tan dudosa como la del propio Excel.
Decimos que "nos devuelve la referencia que hacemos a un rango". Entonces, dentro de la función debo "referenciar" un rango, y se hace indicando su numero de fila y columna (segundo y tercer argumento). Pero claro, antes de decirle "devolveme aquel rango", debo indicarle donde estoy parado... y ese es el primer argumento.
Supongamos que estoy en A1 y escribo:
=DESFREF(A1;1,1)
con esto, logro obtener el valor presente en B2 ¿Por qué? Sencillo: segundo argumento: 1, que le indica que se desplace una fila hacia abajo, tercer argumento: 1, que le indica que se desplace una columna a la derecha. Si mi "base" o "punto de referencia" es A1 (primer argumento), bajo una fila y me desplazo a la derecha una columna... "caigo" en B2 y, por ende, obtengo su valor.
¿Se entiende?
Otro ejemplo, ya que "fisicamente" puedo estar posicionado en A1, pero mi punto de partida puede ser otro:
=DESREF(D1,2,3)
que me devuelve al rango D3. Le estoy diciendo: =DESREF(el punto de partida es D1, desplazate dos filas hacia abajo, desplazate tres columnas hacia la derecha). Y, en esas coordenadas, se encuentra G3.
Creo que hasta aqui las cosas van bien. Pero DESREF() tiene dos argumentos mas, opcionales: ALTO, ANCHO, que nos permiten devolver un rango (conjunto de celdas). Como es obvio, si quiero obtener un rango, debo pasarle a la función cuantas filas (ALTO) y/o cuantas columnas (ANCHO) tiene ese rango. Vamos a seguir con nuestro último ejemplo:
=DESREF(D1,2,3) 'que es igual a D3
entonces:
=DESREF(D1,2,3,5,1) es igual a G3:G7. Parto de D1, con el segundo y tercer argumento referencio a G3, con el cuarto le doy una altura de 5 filas, y con el quinto un ancho de 1 columna. Listo, G3:G7
Podemos corroborar esto de la siguiente forma:
=SUMA(DESREF(D1,2,3,5,1))
y veremos que es lo mismo que poner =SUMA(G3:G7)
Pero acá falta algo.. algo que explique por qué me complico la vida poniendo =SUMA(DESREF(D1,2,3,5,1)), si es lo mismo que =SUMA(G3:G7). Y desde ya que existe un motivo mas que bueno: con DESREF() puedo crear rangos dinámicos, que varíen su posicion, altura y anchura de acuerdo a las necesidades de mi planilla. Notarán que en los ejemplos que dí introduje valores "fijos" como argumentos, pero a DESREF() la utilizaremos en la mayor parte de las situaciones con celdas o resultados de otras funciones.
Por eso es fundamental que aprendan como se usa de forma básica, por que quizás mas adelante nos encontremos con:
=DESREF(ENTERO(A1/B2), BUSCARV(C5;$D$4:$E$10), INDICE($P1:$P50;A2),$B$2 * 5, $B$2 * 3))
O sea: cada argumento es el resultado de funciones... y si no conocemos bien la base, no la agarramos mas. Y ni hablar cuando la incluyamos dentro de funciones matriciales.
Repasen lo visto hasta ahora y veamos el ejemplo que les armé: una tabla con registros históricos de ingresos, egresos y utilidades, que comprende desde enero 96' a diciembre 00'. Dada la gran cantidad de registros (mentira, es para enfatizar el ejemplo) decido colocar la tabla en otra hoja.
Con DESREF() crearé un formulario que me mostrará los totales correspondientes a ingresos, egresos y utilidades, entre dos meses que nosotros le especifiquemos.
empecemos a mostrar imagenes: esta es la tabla de datos, que tiene registros hasta la fila nro 61:
y quiero llegar a esto:
entonces, vamos a analizar la funcion que tengo en la columna "ingresos":
1) como primer argumento le paso el rango (A1) en donde tengo la tabla, que está en una hoja llamada (muy creativamente) "TABLA".
2) segundo argumento: E47. aqui tengo el valor 1 o sea que le ordeno que se desplace una fila mas abajo (para evitar los encabezados de la tabla)
3) tercer argumento: 1. le doy a entender que no se desplace ninguna columna.
4) cuarto argumento: E48. indico el alto (cantidad de filas) que tendrá el rango.
5) quinto: 1. acho: una sola columna.
¿se entiende?
les muestro como queda la funcion en las otras dos columnas, para que analicen que cambios se producen:
y viendo este pequeño formulario, se me ocurre tomar sus datos y brindar un gráfico, el cual también se actualizará cada vez que cambiemos la consulta:
una vez mas, el límite de excel somos nosotros mismos.
- Obtener enlace
- X
- Correo electrónico
- Otras aplicaciones
Etiquetas
Funciones
Etiquetas:
Funciones
- Obtener enlace
- X
- Correo electrónico
- Otras aplicaciones
Comentarios
Publicar un comentario