miércoles, 1 de diciembre de 2010

Resaltar un Dato Concreto de una Tabla

"Aprovechando el ejemplo utilizado en el anterior artículo ( Destacar Toda una Fila de una Tabla de Datos) me gustaría saber cómo destacar un dato concreto de dicha tabla, es decir, el cruce entre una fila y una columna (un año y un mes concreto en el ejemplo)".

La solución es muy parecida a la mostrada en el anterior post. Tendremos que incluir una nueva entrada de datos que haga referencia al mes y utilizar la función lógica Y dentro del Formato Condicional. La tabla de la que partimos es la misma que ya utilizamos en el anterior artículo, a saber:


Para destacar un sólo dato necesitamos incluir en el modelo una nueva entrada de datos que será el mes. Para ello introducimos el rótulo en E2 como se ve en la imagen y nos situamos en la celda F2 y vamos al menú Datos/Validación/Permitir/Lista y en Origen seleccionamos el rango C10:N10 y pulsamos Aceptar.


Ahora ya podemos indicar el año y el mes que queremos destacar. A continuación seleccionamos el rango C11:N19 y vamos al menú Formato/Formato condicional. En Condición 1seleccionamos Fórmula y en el cuadro de la derecha escribimos la siguiente:

=Y($B11=$C$2;C$10=$F$2)

Pulsamos el botón Formato y elegimos, por ejemplo, trama amarilla y número en negrita y pulsamos Aceptar. El resultado será el siguiente:


En realidad sólo se destacará el dato dentro de la tabla. Para que también destaque el año y el mes debemos hacer lo siguiente:

Para el mes:
1. Seleccionamos el rango C10:N10
2. Vamos al menú Formato/Formato condicional y seleccionamos Fórmula.
3. En el cuadro de la derecha escribimos la fórmula: =C$10=$F$2
4. Pulsamos el botón Formato y elegimos los colores de trama y de fuente
5. Pulsamos Aceptar.

Para el año:
1. Seleccionamos el rango B11:B19
2. Vamos al menú Formato/Formato condicional y seleccionamos Fórmula.
3. En el cuadro de la derecha escribimos la fórmula: =$B11=$C$2
4. Pulsamos el botón Formato y elegimos los colores de trama y de fuente
5. Pulsamos Aceptar.

martes, 30 de noviembre de 2010

Destacar toda una Fila de una Tabla de Datos


"Tengo una tabla con datos históricos de ventas por meses. La utilizo habitualmente en presentaciones y me ayudaría mucho el poder seleccionar un año y que se destacara la información de dicho ejercicio".

No problema. La solución es muy sencilla (cosa que se agradece a estas alturas del año) haciendo uso del Formato Condicional. Partimos del siguiente ejemplo:


Introducimos la entrada de datos como sigue:


Nos situamos en la celda C2 y vamos al menú Datos/Validación y seleccionamos Permitir/Lista. En el apartado Origen seleccionamos el rango B11:B19 y pulsamos Aceptar. De esta manera ya tenemos nuestra lista desplegable con los años representados en la tabla:


A continuación seleccionamos todos los datos de la tabla, es decir, el rango C11:N19 (los rótulos no). Vamos al menú Formato/Formato condicional y lo configuramos de la siguiente manera:

En la Condición 1 seleccionamos la opción Fórmula y en el cuadro de la derecha escribimos la fórmula:

=$B11=$C$2

Pulsamos el botón Formato y seleccionamos el formato concreto que queremos que adopte toda la fila a destacar (por ejemplo trama amarilla y números en negrita) y pulsamos Aceptar:


¡Objetivo conseguido! Cuando seleccionemos un año en la celda C2 toda la fila de la tabla correspondiente a dicho año se formateará como le hayamos indicado:


domingo, 21 de noviembre de 2010

Búsqueda con Columna Variable (3 soluciones)


"Tengo una tabla con información de empleados y me gustaría tener como variable una celda donde indicarle la información requerida para que me devuelva la información existente en la intersección entre el empleado que aparece en la primera columna de la tabla y una columna variable".

Aunque una posible solución ya la tenéis en el post "Búsqueda con Tablas e Indicador de Columna variable", y dado que me han llegado varias consultas muy similares, vamos a ampliar dicho artículo planteando tres soluciones distintas con las siguientes funciones: doble BUSCARV, BUSCARV e INDIRECTO y, finalmente, INDICE y COINCIDIR. Partimos del siguiente ejemplo:


Planteamos la siguiente entrada de datos:


En la celda C2 seleccionaremos el empleado del que queremos la información y en la celda C3 la información concreta que necesitamos. Empezamos creando con la herramienta de Validación de Datos las listas de entrada de datos. Para ello nos situamos en la celda C2 y vamos a l menú Datos/Validación y lo formulamos como se muestra en la imagen:


Pulsamos Aceptar y ya tendremos nuestra lista desplegable en C2. Para hacer lo mismo en C3 debemos dar algún paso intermedio. El motivo es que el contenido de la lista de C3 serán los rótulos de los campos de la tabla. Dicho rótulos se encuentran en disposición horizontal y la herramienta de validación no nos permite que el origen de la lista tenga dicha disposición. Lo único que tenemos que hacer es seleccionar el rango B10:F10 y pulsar Copiar. A continuación nos situamos en la celda H3 y vamos a Edición/Pegado Especial y seleccionamos Transponer, y pulsamos Aceptar. En la columna I añadimos la numeración que se muestra en la imagen y que después veremos su uso:


Ahora sí podemos situarnos en C3 y proceder a genera la lista desplegable (Datos/Validación):



1. Solución con Doble BUSCARV
Seleccionamos el rango B11:F20 y vamos al cuadro de nombres (a la izquierda de la barra de fórmulas). Hacemos un clic y escribimos el nombre Datos y pulsamos Enter. A continuación hacemos lo mismo con el rango H3:I7 y le damos el nombre, por ejemplo, ncol. Esta tabla no es otra cosa que el nombre de los distintos campos de la tabla y el número de columna que representa dentro de dicha tabla (que hemos denominado Datos). Nos situamos en la celda B5 y escribimos la siguiente fórmula:

=BUSCARV(C2;datos;BUSCARV(C3;ncol;2;FALSO);FALSO)

Lo que estamos haciendo es anidar un BUSCARV en el argumento número de columna de dicha función. Como se puede ver en la siguiente imagen, seleccionamos en C2 el empleado que queremos consultar (empleado7) y después en C3 seleccionamos de la lista la información que necesitamos:



2. Solución con BUSCARV e INDIRECTO
Podemos obtener el mismo resultado anidando la función INDIRECTO en el argumento número de columna de la función BUSCARV. Para ello seleccionamos el rango H3:I7 y vamos al menú Insertar/Nombre/Crear. Aparecerá la ventana que se muestra en la siguiente imagen y en donde debemos seleccionar (ya aparece seleccionada por defecto) la opción columna izquierda:


Pulsamos Aceptar. A partir de este momento en el cuadro de nombres aparecerán todos los nombres de los rótulos de la tabla de datos. Al pulsar cualquiera de estos nombres nos llevará al número de columna que representan. Y esto es lo que precisamente nos ayudará con la función INDIRECTO. Nos situamos en la celda D5 y escribimos la siguiente fórmula:

=BUSCARV(C2;datos;INDIRECTO(C3);FALSO)



3. Solución con INDICE y COINCIDIR
La función INDICE nos devuelve la intersección de una fila y columna de una matriz. Nuestra matriz es la tabla que hemos denominado Datos. El número de fila que queremos dependerá del empleado que seleccionemos en C2. Para calcular a qué fila se refiere introducimos la función COINCIDIR. El número de columna dependerá de la información solicitada en C3. Utilizamos también la función COINCIDIR para obtener el número de columna. La fórmula que debemos escribir en F5 es:

=INDICE(datos;COINCIDIR(C2;B11:B20;0);COINCIDIR(C3;B10:F10;0))


miércoles, 27 de octubre de 2010

Problemas en el Cálculo del Valor Actual Neto


"Estoy intentando realizar el cálculo del Valor Actual Neto (VAN) de una inversión y obtengo un resultado incorrecto".

El ejemplo que nos envía es el siguiente:


La función VAN en excel presenta diversas peculiaridades:

a) El nombre de la función en excel es VNA, y no VAN.
b) El desembolso inicial o inversión no debe introducirse dentro de la función, sino fuera de ésta sumando.
c) El rango de flujos de caja considerado en la función no debe contener ninguna celda en blanco. Si, como es el caso, esperamos un flujo igual a cero en algún periodo del proyecto debemos escribir cero como valor en dicho periodo. Este es precisamente el error que nos encontramos en este caso.

Nos situamos en la celda C13 y escribimos la fórmula:

=VNA(C3;C6:C11)+C5

El primer argumento hace referencia a la tasa de descuento. En nuestro ejemplo se trata del Tipo de Interés Nominal Anual (TIN) que se encuentra en la celda C3.
El segundo argumento es el rango donde se encuentran los flujos de caja (sin incluir el desembolso inicial, como ya he indicado). En nuestro caso el rango C6:C11.
Finalmente, fuera de la función VNA sumamos (ya que se encuentra con signo negativo) el desembolso inicial.

La fórmula está perfectamente planteada. El problema en este caso es que en los años 3 y 4, en los que esperamos un flujo de caja igual a cero, hemos dejado las celdas en blanco. Con este planteamiento excel interpreta que el flujo del año 3 (que se encuentra en blanco) es el de la siguiente celda del rango que contenga un valor, es decir, el del año 5 en nuestro ejemplo. En el año 4 interpreta que su valor es el del año 6. Evidentemente esto genera un error a la hora de actualizar los valores. La solución es tan sencilla como introducir los valores cero en las celdas que hemos dejado en blanco, tal y como se muestra a continuación:


sábado, 16 de octubre de 2010

Cálculo de la Frecuencia de la Moda


"En un post de tu blog , explicas cómo hallar el valor más repetido en un rango (la moda). Lo que yo necesito es, además de saber dicho valor, saber cuántas veces se repite".

El post al que te refieres es Cálculo del Valor más Frecuente (MODA) de un Rango. Para dar solución a tu pregunta utilizaremos las funciones CONTAR.SI y MODA. Partimos del siguiente ejemplo que muestra las valoraciones obtenidas en las encuestas realizadas a cuatro tiendas:


Nos situamos en la celda B17 y escribimos la siguiente fórmula:

=CONTAR.SI(B4:B15;MODA(B4:B15))

De esta manera lo que estamos haciendo es utilizar como criterio para contar el valor de la moda, es decir, que cuente cuántas veces se repite el valor de la moda en el rango B4:B15 . En nuestro ejemplo sólo nos quedaría copiar la fórmula introducida en B17 en el rango C17:E17 .

Si además queremos tener disponible el valor en si de la Moda podemos escribir en B19 la fórmula:

=MODA(B4:B15) y copiar esta fórmula en el rango C19:E19


Como se puede comprobar, el valor de la Moda de las encuestas de la Tienda 1 es 2 y dicho valor se repite 4 veces.