mis tips excel

63
Agrupar tabla dinámica por meses Cuando hemos creado una tabla dinámica en Excel con datos que incluyen fechas, es muy común vernos en la necesidad de agrupar la tabla dinámica por meses de manera que podamos mostrar adecuadamente el conjunto de datos que necesitamos analizar. Para muchos usuarios que comienzan a utilizar las tablas dinámicas, este tipo de agrupación no es tan intuitivo, así que en esta ocasión te mostraré lo fácil que es hacer este tipo de agrupación en Excel. Para nuestro ejemplo utilizaremos los datos históricos de órdenes de compra de una compañía que comenzó a realizar ventas en el mes de septiembre del 2010 y que ha registrado las ventas mes por mes hasta octubre del año 2014. Al momento de crear la tabla dinámica colocaré el campo Fecha como Etiqueta de fila, el campo Total en la sección Valores y finalmente el campo Vendedor como un Filtro de informe. De esta manera la tabla dinámica quedará de la siguiente manera:

Upload: vladimir-mendoza

Post on 13-Dec-2015

226 views

Category:

Documents


0 download

DESCRIPTION

Tutorial de excel avanzado

TRANSCRIPT

Agrupar tabla dinámica por mesesCuando hemos creado una tabla dinámica en Excel con datos que incluyen fechas, es muy común vernos en la necesidad de agrupar la tabla dinámica por meses de manera que podamos mostrar adecuadamente el conjunto de datos que necesitamos analizar.

Para muchos usuarios que comienzan a utilizar las tablas dinámicas, este tipo de agrupación no es tan intuitivo, así que en esta ocasión te mostraré lo fácil que es hacer este tipo de agrupación en Excel. Para nuestro ejemplo utilizaremos los datos históricos de órdenes de compra de una compañía que comenzó a realizar ventas en el mes de septiembre del 2010 y que ha registrado las ventas mes por mes hasta octubre del año 2014.

Al momento de crear la tabla dinámica colocaré el campo Fecha como Etiqueta de fila, el campo Total en la sección Valores y finalmente el campo Vendedor como un Filtro de informe. De esta manera la tabla dinámica quedará de la siguiente manera:

Cómo agrupar tabla dinámica por meses

Para agrupar las fechas de la tabla dinámica por meses comenzamos haciendo clic derecho sobre cualquiera de las fechas y seleccionamos la opción Agrupar.

Esta misma acción también la podemos lograr con el comando Agrupar campos que se encuentra en Herramientas de tabla dinámica > Opciones > Agrupar. Cualquiera de las dos opciones antes mencionadas abrirá el cuadro de diálogo Agrupar:

Este cuadro de diálogo mostrará tanto la fecha inicial como la fecha final de nuestro campo de fechas, así que lo único que tendremos que hacer será seleccionar la opción Meses y pulsar el botón Aceptar. Como resultado obtendremos la siguiente tabla dinámica:

Lo que debes saber es que este tipo de agrupación ha colocado los meses de todos los años dentro de la misma fila es decir, los meses de octubre del año 2010, 2011, 2012, 2013 y 2014 están agrupados dentro de la fila etiquetada como oct.

Si éste es el tipo de agrupación por meses que necesitas en tu tabla dinámica entonces habremos terminado, pero si quieres distinguir entre los diferentes meses de cada año, entonces necesitamos modificar un poco la agrupación de datos que acabamos de realizar.

Tabla dinámica agrupada por meses y años

Para poder distinguir los meses y años dentro de la agrupación de la tabla dinámica volvemos a abrir el cuadro de diálogo Agrupar haciendo clic derecho sobre cualquier etiqueta de mes pero ahora nos aseguraremos de seleccionar la opción Meses y Años de la siguiente manera:

Al seleccionar tanto los meses como los años, la tabla dinámica será agrupada de tal manera que podrás distinguir el total de cada mes para cada uno de los años.

Cómo desagrupar la tabla dinámica

Si después de realizar el análisis de los datos deseas desagrupar los meses de la tabla dinámica puedes hacerlo seleccionando cualquier celda de la columna de fechas y pulsar el botón Desagrupar que se encuentra en la ficha Herramientas de tabla dinámica > Opciones > Agrupar.

También puedes hacer clic derecho sobre cualquiera de los meses o años en la tabla dinámica y seleccionar la opción Desagrupar.

Ahora ya conoces dos alternativas que podrás utilizar la próxima vez que necesites agrupar una tabla dinámica por meses. Si quieres practicar este tipo de agrupación de una tabla dinámica descarga el archivo de trabajo que utilicé en la elaboración de este artículo.

Filtrar tabla dinámica según valor de celdaCuando tienes varias tablas dinámicas y necesitas aplicar un filtro a todas ellas al mismo tiempo en base al valor de una celda te das cuenta que no existe una manera fácil de hacerlo en Excel. Hoy analizaremos una alternativa para filtrar una tabla dinámica según el valor de una celda.

Antes de continuar, debo aclarar que los filtros de informe son la opción más sencilla para filtrar una tabla dinámica ya que podemos elegir los datos que deseamos visualizar. Sin embargo, hay ocasiones en las que una fórmula de Excel inserta un valor en una celda por el cual queremos filtrar una tabla dinámica o simplemente porque el usuario desea ingresar el texto manualmente. Cualquiera que sea el caso, será necesario utilizar código VBA para filtrar la tabla dinámica en base al valor de dicha celda.

Como primer ejemplo utilizaremos una tabla dinámica que muestra la lista de estados con sus respectivos montos de ventas de los últimos dos años. Cada estado pertenece a una región (Norte, Sur, Este, Oeste) que está presente como el filtro de informe de la tabla dinámica, pero no utilizaremos dicho filtro de informe sino que aplicaremos el filtro a la tabla dinámica en base al valor de la celda F1.

Filtrar tabla dinámica según valor de celda

El código que utilizaremos detecta cualquier cambio en la celda F1 y posteriormente se realiza la actualización de los datos de la tabla dinámica.

123456789101112131415161718

Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("F1")) Is Nothing Then     'En base al campo Region de la Tabla dinámica1:    With PivotTables("Tabla dinámica1").PivotFields("Region")             'Limpiar todos los filtros        .ClearAllFilters

                 'Filtrar por el valor de la celda F1        On Error Resume Next        .CurrentPage = Range("F1").Value

             End WithEnd If End Sub

La colección PivotTables nos permite acceder a los campos de una tabla dinámica. En nuestro ejemplo nos interesa el campo Region para el cual se limpia cualquier filtro antes de aplicar uno nuevo basado en el valor de la celda F1. El resultado de esta macro es el siguiente:

Al ingresar el valor Norte en la celda F1 la macro aplicará el filtro a la tabla dinámica y puedes notar que el filtro de informe también cambia automáticamente al valor Norte.

En cuanto a los posibles errores que se pudieran presentar, nuestra macro considera aquellos casos en los que ingresamos una Region no válida en la celda F1, o si simplemente dejamos la celda en blanco, ya que con la línea de código On Error Resume Next se captura el error y se limpia el filtro.

Macro para filtrar todas las tablas dinámicas

Como segundo ejemplo crearé una tabla dinámica diferente en otra hoja y modificaré la macro anterior para filtrar todas las tablas dinámicas del libro de acuerdo al valor de la celda F1. El código de la macro es el siguiente:

1 Private Sub Worksheet_Change(ByVal Target As Range)

23456789101112131415161718192021222324252627282930

 If Not Intersect(Target, Range("F1")) Is Nothing Then     Dim hoja As Worksheet    Dim td As PivotTable         'Recorrer todas las hojas del libro    For Each hoja In ThisWorkbook.Worksheets                 'Recorrer las tablas dinámicas de la hoja        For Each td In hoja.PivotTables                         'En base al campo Region de la tabla dinámica:            With td.PivotFields("Region")                             'Limpiar todos los filtros                .ClearAllFilters

                                 'Filtrar por el valor de la celda F1                On Error Resume Next                .CurrentPage = Range("F1").Value

                             End With                      Next td     NextEnd If End Sub

A diferencia del primer ejemplo, en esta macro utilizamos la colección ThisWorkbook.Worksheets para recorrer todas las hojas del libro y de esa manera acceder a todas las tablas dinámicas. Al ingresar  un valor en la celda F1 se aplicará el filtro correspondiente a la tabla dinámica de la hoja actual:

Además, si cambiamos a la hoja del primer ejemplo, notarás que también se ha aplicado el mismo filtro a la tabla dinámica:

Observa que el filtro de informe muestra el valor Sur aunque la celda F1 esté vacía, pero eso no importa porque el filtro se ha aplicado considerando la celda F1 de la otra hoja. Lo único que es necesario para que esta macro funcione correctamente es que todas las tablas dinámicas deben incluir el campo por el cual se está filtrando, que en nuestro ejemplo es el campo Region.

Las macros que hemos creado te ayudarán a filtrar una tabla dinámica por el valor de una celda e inclusive podrás aplicar dicho filtro a todas las tablas dinámicas de un libro si así lo requieres. Descarga el libro de trabajo utilizado en este artículo y continúa probando los filtros.

Por último debo decir que, si en lugar de utilizar el valor de una celda, deseas filtrar varias tablas dinámicas con un solo filtro de informe, te recomiendo leer el artículo Cómo vincular tablas dinámicas por un filtro de informe donde encontrarás otra alternativa de solución.

Encontrar el valor más frecuente en ExcelCuando tenemos una lista de valores y necesitamos encontrar el valor más frecuente podemos recurrir a la función MODA.UNO que hace precisamente eso, nos ayuda a encontrar el valor que más se repite dentro de un rango de celdas.

La función MODA.UNO

La función MODA.UNO fue introducida en Excel 2010, pero puedes utilizar la función MODA para  versiones anteriores. Esta función recibe como argumentos una lista de valores numéricos de los cuales se obtendrá el valor más frecuente. Por ejemplo, en la siguiente imagen puedes observar que la función MODA.UNO devuelve el valor 1, el cual se repite cuatro veces dentro del rango A1:A10.

Esta función siempre devolverá un solo valor y debemos tener en consideración los siguientes puntos al momento de utilizarla:

Los argumentos pueden ser referencias a otras celdas o nombres de rango, pero las celdas deberán contener valores numéricos.

Si alguna celda tienen un valor en texto o contiene un error, entonces la función devolverá el error #N/A.

Si dentro de la lista no existen valores duplicados, entonces la función devolverá el error #N/A.

Como ya lo he mencionado antes, la función MODA.UNO siempre devuelve un solo valor pero ¿Qué sucede si tenemos dos valores numéricos que se repiten la misma cantidad de veces?

En el ejemplo anterior, tanto el número 2 como el número 3 se repiten 4 veces cada uno, sin embargo la función MODA.UNO solo nos puede devolver el número 2. Precisamente para resolver esta situación se creó la función MODA.VARIOS.

La función MODA.VARIOS

La función MODA.VARIOS es una función que nos devolverá múltiples valores por lo que debemos utilizarla como una fórmula matricial, es decir pulsando la combinación de teclas Ctrl + Mayús + Entrar al final de la fórmula. Pero antes de ingresarla debemos seleccionar el rango de celdas donde deseamos obtener los resultados. Para nuestro ejemplo seleccionaré el rango C1:C2:

Posteriormente en la barra de fórmulas introduciré la fórmula sin pulsar entrar:

=MODA.VARIOS(A1:A10)

Finalmente pulsaré la combinación de teclas Ctrl + Mayús + Entrar. Es importante mencionar que la tecla Mayús es también conocida por su nombre en inglés como la tecla Shift. Una vez ingresada la fórmula matricial, Excel desplegará los resultados en el rango previamente seleccionado:

A diferencia de la función MODA.UNO, la función MODA.VARIOS devuelve como resultado los valores que más se repiten dentro del rango indicado, que en este caso son los números 2 y 3. En este ejemplo hice una selección previa del rango C1:C2 pero en realidad eso no tiene relevancia, ya que si hubiera seleccionado una mayor cantidad de celdas, pero la fórmula no devuelve tantos resultados, entonces dichas celdas mostrarían el error #N/A sin afectar el resultado de la función:

Recuerda que la función MODA.VARIOS está disponible solamente a partir de Excel 2010 y lamentablemente no existe equivalencia para versiones anteriores. Solo la función MODA es equivalente a la función MODA.UNO.

Encontrar el valor más frecuente en texto

Una desventaja de las funciones mencionadas anteriormente es que solamente nos permiten trabajar con valores numéricos, pero en más de una ocasión nos veremos en la necesidad de encontrar el valor más frecuente en Excel pero utilizando valores de texto. Para resolver este problema debemos recurrir en primer lugar a la función COINCIDIR la cual hace la comparación de un valor con una matriz y nos devuelve la posición donde se ha encontrado dicho valor. En la siguiente fórmula hago un uso “especial” de esta función:

=COINCIDIR(A1:A10, A1:A10, 0)

Usualmente el primer argumento de la función COINCIDIR es el valor que estamos buscando, pero en esta fórmula estoy indicando un rango de celdas. Lo que obtendremos como resultado será una matriz con una serie de valores que nos indicarán la posición en la que encuentra cada uno de los valores del rango A1:A10. Para entender mejor esta fórmula, seleccionaré el rango de celdas C1:C10, copiaré la fórmula a la barra de fórmulas y pulsaré la combinación de teclas Ctrl + Mayús + Entrar.

Al utilizar de esta manera la función COINCIDIR obtenemos un arreglo de valores numéricos como el siguiente: {1,2,2,4,4,1,4,1,4,2}. Este arreglo de números es justamente lo que necesitamos para preguntar a la función MODA.UNO el valor que más se repite. De esta manera podemos armar la siguiente fórmula:

=MODA.UNO(COINCIDIR(A1:A10, A1:A10, 0))

En este caso ya no es necesario introducir la fórmula como si fuera matricial ya que la función MODA.UNO se encarga de decirnos el valor más frecuente entre los resultados de la función COINCIDIR. Observa el resultado de esta fórmula:

Con esta fórmula sabemos que el valor que más se repite es la posición 4 y que corresponde a Hugo. Para obtener dicho valor debemos complementar nuestra fórmula utilizando la función INDICE de la siguiente manera:

=INDICE(A1:A10, MODA.UNO(COINCIDIR(A1:A10, A1:A10, 0)))

Recuerda que si tienes Excel 2007, o una versión anterior, deberás utilizar la función MODA en lugar de MODA.UNO. Al ingresar esta fórmula obtendremos el texto más frecuente dentro del rango especificado:

De esta manera hemos encontrado el valor más frecuente en Excel sin importar si los valores son numéricos o de texto. Descarga el libro de trabajo y utiliza las fórmulas propuestas en este artículo para encontrar los valores que más se repiten en tus datos.

Cómo ocultar y mostrar un gráfico de Excel con un clicEste es un buen truco que puede ayudarte al momento de crear algún reporte en Excel donde tienes una tabla de datos y justo debajo de ella una caja de selección para ocultar o mostrar un gráfico de Excel asociado a los datos.

A continuación puedes ver el resultado que obtendremos al seguir cada uno de los pasos mencionados en este artículo:

El primer paso para lograr este efecto con un gráfico de Excel será agregar una casilla de verificación.

Casilla de verificación para ocultar o mostrar gráfico

En la ficha Programador, haz clic en el botón Insertar y selecciona la opción Casilla de verificación de los Controles de formulario.

Después de colocar la Casilla de verificación en un lugar adecuado debemos asociarle una celda. Para hacerlo debes hacer clic derecho sobre el control y seleccionar la opción Formato de control y se mostrará un cuadro de diálogo.

En el cuadro de texto Vincular con la celda colocaremos la celda que mostrará en todo momento el estado actual de la casilla de verificación. En este ejemplo he colocado la celda C1 la cual mostrará VERDADERO en caso de que marquemos la casilla, o FALSO en caso contrario.

Crear el gráfico a mostrar

El siguiente paso es crear el gráfico a mostrar, pero lo colocaremos en una hoja diferente a donde se encuentran los datos. Yo lo colocaré en la Hoja2 y lo ajustaré para que las orillas del gráfico coincidan con las líneas de cuadrícula. No debe ser una coincidencia exacta, solamente tratando de que abarque el 100% de un rango de celdas.

A continuación crearemos un Nombre que abarcará el mismo rango de celdas que nuestro gráfico. En el ejemplo, puedes observar que el gráfico abarca el rango A1:E12 y por lo tanto crearé un Nombre con la misma referencia. Recuerda que para crear un nombre debes ir a la ficha Fórmulas y pulsar el botón Asignar nombre.

Al hacer clic en el botón Aceptar habré creado el nombre de rango “grafico”. A continuación crearé otro nombre de rango, pero en esta ocasión haciendo referencia a una celda vacía dentro de la misma Hoja2. En la siguiente imagen puedes ver que he creado el rango “vacio” que hace referencia a la celda G1.

Hasta el momento he creado dos nombres de rango: “grafico” y “vacio”. El nombre “grafico” hace referencia al rango de celdas que ocupa mi gráfico y el rango “vacio” hace referencia a una celda vacía. Si abro el Administrador de nombres podré observar ambos rangos creados:

Como un consejo adicional y para tener una mejor visibilidad del gráfico, ocultaré las líneas de cuadrícula de la Hoja2. Eso lo puedes hacer desde la ficha Vista dentro del grupo Mostrar.

Crear una imagen vinculada

El siguiente paso para ocultar y mostrar un gráfico de Excel con un clic será crear una Imagen vinculada. Este es un truco muy especial de Excel, así que pon atención.

Regresaremos a trabajar a la hoja donde están nuestros datos. Comienzo haciendo clic sobre cualquier celda que esté vacía, por ejemplo la celda J1, y pulsaré la combinación de teclas CTRL + C para copiar dicha celda. A continuación iré a la celda D1 y pulsaré el menú desplegable del botón Pegar para seleccionar la opción Imagen vinculada:

Como resultado obtendremos una imagen incrustada en la celda D1 que será el reflejo de la celda vacía que habíamos copiado previamente.

Es importante que incrustemos dicha Imagen vinculada en la celda donde aparecerá la esquina superior izquierda de nuestro gráfico. Como tal vez lo puedes imaginar, utilizaremos dicha Imagen vinculada para mostrar nuestro gráfico, pero antes debemos hacer una configuración adicional muy importante.

Vincular el gráfico y la casilla de verificación

Nuestro siguiente paso será crear un nuevo nombre de rango que estará definido por una fórmula. Ve a la ficha Fórmulas y pulsa el botón Asignar nombre. Estableceré el nombre como “MiGrafico” y en la caja de texto de referencia colocaré la siguiente fórmula:

=SI(Hoja1!$C$1,grafico,vacio)

Esta fórmula evaluará la celda donde se encuentra el resultado de la casilla de verificación y en caso de ser verdadero devolverá el rango “gráfico” y en caso de ser falso devolverá el rango “vacio”.

Ahora debemos seleccionar la Imagen vinculada y cambiar su referencia hacia el nombre del rango que acabamos de crear. En nuestro ejemplo la imagen vinculada hacía referencia a $J$1 pero la modificaré para hacer referencia al nombre “MiGrafico”:

 

En cuanto se realice esta modificación, y si la casilla de verificación está seleccionada, se mostrará el gráfico inmediatamente.

Al momento de marcar o desmarcar la casilla de verificación se mostrará o se ocultará el gráfico de Excel. Una última mejora que puedes hacer es ocultar el texto de la celda C1 eligiendo el color blanco como el color de la fuente.

Puedes descargar el libro de trabajo para experimentar con el ejemplo terminado y ver lo fácil que es ocultar y mostrar un gráfico de Excel con un clic.

Artículos relacionadosOcultar datos en Excel con formato condicional

Cómo agrupar datos en tablas dinámicas de ExcelLas tablas dinámicas en Excel son de gran ayuda para obtener reportes rápidos y efectivos de nuestra información y en esta ocasión te mostraré cómo agrupar los datos de una tabla dinámica para mejorar nuestro análisis.

Agrupar elementos numéricos de una tabla dinámica

En el siguiente ejemplo verás una tabla dinámica que tiene la información de varios pedidos de compra que se han hecho a una empresa.

Lo que deseamos hacer es analizar la información en grupos de 10. Para hacer este tipo de agrupación debo hacer clic derecho sobre cualquiera de los elementos de la columna que contiene los números de pedido y seleccionar la opción Agrupar.

Se mostrará el cuadro de diálogo Agrupar el cual me permitirá indicar el número inicial y final así como el tamaño de la agrupación que deseo. El pulsar el botón Aceptar podremos observar la información agrupada de acuerdo a la especificación hecha:

Agrupar elementos seleccionados de una tabla dinámica

Es posible agrupar solamente algunos elementos de nuestra tabla dinámica de acuerdo a alguna selección que realicemos. Para ello debemos seleccionar los elementos mientras mantenemos pulsada la tecla CTRL.

Posteriormente en la ficha Opciones dentro del grupo Agrupar pulsamos el botón Agrupar selección y obtendremos el siguiente resultado:

En esta paso sucedieron dos cosas. La primera es que todos los elementos seleccionados se agruparon dentro de un solo grupo llamado Grupo1. La segunda cosa que sucedió es que se creó un nuevo campo llamado Vendedor2 que puedes observar en la lista de campos. En la siguiente imagen puedes observar que he hecho otra selección y agrupación para tener un grupo de mujeres y otro de hombres en la tabla dinámica.

Agrupar por fechas en una tabla dinámica

Cuando tienes un dato de tipo fecha en una tabla dinámica es posible agrupar la información por cualquiera de las siguientes unidades de tiempo: Años, trimestres, meses, días, horas, minutos y segundos. Supongamos la siguiente tabla dinámica donde tenemos la fecha y monto de las facturas que hemos cobrado durante un año.

Necesito agrupar la información por mes, así que debo hacer clic derecho sobre cualquier celda con una fecha y selección la opción Agrupar. Se mostrará el cuadro de diálogo Agrupar permitiéndome seleccionar la opción deseada:

Al pulsar el botón Aceptar obtendremos el resultado deseado:

Es importante que consideres que para este ejemplo he supuesto que todos los datos son del mismo año. En caso de que tu tabla dinámica tuviera información de diversos años, sería necesario incluir también el año para que Excel haga la diferencia los meses de los diferentes años. Para ver un ejemplo específico con datos de diferentes años consulta el artículo Agrupar por fechas una tabla dinámica.

Desagrupar elementos agrupados de una tabla dinámica

Para desagrupar los elementos que tengamos agrupados en nuestra tabla dinámica debemos seleccionar dicho grupo e ir a la ficha Opciones y dentro del grupo Agrupar pulsar el botón Desagrupar.

Artículos relacionadosAgrupar una tabla dinámica por semanas

Agrupar por fechas una tabla dinámicaPodemos agrupar por fechas una tabla dinámica con tan solo seguir algunos pasos sencillos. Supongamos que tengo una tabla de datos que contiene las ventas de diciembre del 2011 y de enero del 2012 de la siguiente manera:

Después de crear una tabla dinámica basada en este rango de datos obtenemos el siguiente resultado:

Los datos en la tabla dinámica se ven exactamente igual que el rango de datos origen porque no hemos agrupado por fechas.

Agrupar por fechas una tabla dinámica

Para agrupar por fechas una tabla dinámica debemos hacer clic derecho en cualquier celda de la columna de fechas y seleccionar la opción de menú Agrupar. Se mostrará el cuadro de diálogo Agrupar.

En este cuadro de diálogo debes seleccionar las opciones Meses y Años de manera que la tabla dinámica haga una clara distinción entre los meses de 2011 y 2012. Al pulsar el botón Aceptar tendremos los datos agrupados por fecha.

Para desagrupar los datos debemos hacer clic derecho sobre una celda de la columna de fechas y seleccionar la opción Desagrupar.

Cómo agregar líneas horizontales a un gráfico de ExcelCuando hablamos de agregar líneas horizontales a un gráfico de Excel nos podríamos estar refiriendo a las líneas de división de un gráfico o también a colocar líneas adicionales que nos ayuden a marcar un límite dentro del gráfico. En esta ocasión te mostraré como agregar ambas.

Agregar líneas de división horizontales secundarias

De manera predeterminada Excel muestra en un gráfico unas líneas horizontales conocidas como Líneas de división principales.

Sin embargo, podemos agregar algunas líneas horizontales adicionales de manera que podamos distinguir con mayor claridad los valores que intersectan a la línea del gráfico.

Para agregar líneas de división secundarias debemos ir a la ficha Presentación y dentro del comando Líneas de cuadrícula seleccionar la opción Líneas horizontales de la cuadrícula primarias y finalmente seleccionar la opción Líneas de división primarias y secundarias. El resultado será el siguiente:

De esta manera podemos agregar a nuestro gráfico de Excel varias líneas de división horizontales que ayudarán a interpretar correctamente los datos.

Crear límites horizontales en un gráfico de Excel

Además de las líneas de división primaria y secundaria que nos provee Excel para un gráfico podemos agregarlíneas horizontales para identificar algún límite que deseamos mostrar en nuestro gráfico. Observa el siguiente ejemplo:

El truco para agregar esta líneas horizontales es crear un gráfico combinado en Excel, así que debemos iniciar creando una pequeña tabla con los datos que serán utilizados para crear ambas líneas.

Trazaremos una línea horizontal justamente en el valor 1,800 y otra línea en 2,250 y ya que para poder trazar una línea necesitamos dos puntos he colocado el mismo valor repetido tanto para la columna Mínimo como para la columna Máximo. Para agregar esta información a nuestro gráfico selecciono el rango D1:F3 y lo copio al portapapeles. Posteriormente selecciono el gráfico y desde el botón Pegar selecciono la opción Pegado especial lo cual mostrará el cuadro de diálogo siguiente:

Asegúrate de tener las mismas opciones marcadas y pulsa el botón Aceptar. Eso agregará dos nuevas series de datos a nuestro gráfico:

El siguiente paso es cambiar el tipo de gráfico de cada una de las líneas recién agregadas por un Gráfico XY de dispersión, para ello debes hacer clic derecho sobre la línea y seleccionar la opción Cambiar tipo de gráfico de series.

Se mostrará el cuadro de diálogo Cambiar tipo de gráfico y seleccionamos la opción Dispersión con líneas suavizadas

Hacemos lo mismo para la otra serie y al terminar tendremos un gráfico como el siguiente:

Como puedes observar, las líneas horizontales no llegan hasta el extremo derecho de nuestro gráfico, así que tenemos que cambiar la escala de su eje horizontal. Para ello hacemos clic derecho sobre el eje horizontal superior y seleccionamos la opción Dar formato al eje lo cual mostrará el cuadro de diálogo siguiente:

Para la opción Máxima debemos establecer el valor Fijo igual a uno. De esta manera al aceptar los cambios tendremos ambas líneas ocupando todo el ancho del gráfico.

Lo único que nos resta es eliminar ambos ejes secundarios tanto el eje secundario horizontal (superior) como el eje secundario vertical (derecha). Al eliminarlos las escalas se ajustarán y tendremos el gráfico que deseamos con las líneas horizontales en los valores adecuados.

Una alternativa a la función BUSCARV en ExcelComo seguramente sabes, la función BUSCARV es una de las funciones más utilizadas en Excel y es de gran ayuda para buscar valores dentro de una lista. Sin embargo esta función tiene una restricción que puede ponerte en aprietos.

Condición para utilizar la función BUSCARV

La condición que tenemos para utilizar la función BUSCARV es que el valor que estamos buscando debe estar en la primera columna del rango de datos y esta condición se debe de cumplir siempre.

En la siguiente imagen puedes observar cómo utilizo fácilmente la función BUSCARV para encontrar el total de la factura 8975:

Sin embargo, si deseo encontrar el valor de la factura por el nombre de cliente no será posible utilizar la función BUSCARV ya que la columna Cliente no es la primera columna de la tabla. Por supuesto, una opción sería modificar la tabla de datos y mover la columna C como la primera columna, pero en ocasiones no podemos hacer dicho movimiento.

En esta ocasión te mostraré una alternativa que podemos aplicar haciendo uso de la función INDICE y de lafunción COINCIDIR para obtener el resultado deseado.

Función INDICE y COINCIDIR en lugar de BUSCARV

La función COINCIDIR nos devolverá la posición que tiene el valor que estamos buscando. Observa cómo utilizo dicha función para encontrar la posición del cliente “Apple”:

La función COINCIDIR me devuelve correctamente la posición 3 para el cliente que estoy buscando.  Solamente resta utilizar la función INDICE para obtener el valor de la columna Total que le corresponde.

La función INDICE nos devuelve el valor de una celda con tan solo especificar el número de fila y de columna. Ya con la función COINCIDIR obtuvimos el número de fila que buscamos, así que solo debemos indicar la columna que necesitamos:

Como primer argumento de la función INDICE he colocado el mismo rango que utilicé con la función BUSCARV. El segundo argumento es el resultado de la función COINCIDIR que me devolverá la fila 3 y en el último argumento he indicado que deseo la columna 4 del rango especificado.

Con esta solución hemos creado un comportamiento similar a la función BUSCARV pero sin la restricción de tener que utilizar siempre la primera columna de la tabla.

Cómo limitar el área de trabajo en ExcelEn ocasiones necesitamos limitar el área de trabajo en Excel para no permitir que los usuarios visualicen las celdas de nuestra hoja que contienen fórmulas y cálculos indispensables.

Aunque es posible proteger las celdas de un libro de Excel para que no sean modificadas con el comandoProteger hoja de la ficha Revisar, las celdas quedarán visibles al usuario.

Con el método que mostraré a continuación podremos limitar el área de trabajo en Excel al rango A1:E15 de manera que las columnas y filas sobrantes sean invisibles y el área de desplazamiento de la hoja esté limitada.

Ocultar columnas y filas excedentes

El primer paso es ocultar las columnas y filas que no deseamos que sean vistas por los usuarios. Para ocultar todas las columnas selecciono la primera de ellas haciendo clic en el encabezado de columna:

Una vez que ha sido seleccionada la columna pulsa la combinación de teclas CTRL + Mayus  + Flecha derecha para seleccionar todas las columnas y finalmente haz clic derecho sobre cualquier encabezado de columna y selecciona la opción Ocultar:

Para ocultar las filas seguiremos un procedimiento similar. Hago clic sobre el encabezado de la fila 17:

Después pulsamos la combinación de teclas CTRL + Mayus  + Flecha abajo para seleccionar todas las filas restantes y de igual manera hacemos clic derecho sobre cualquier encabezado de fila para seleccionar la opción Ocultar. Como resultado tendremos ocultas todas las columnas y filas excedentes a nuestro rango:

Limitar el área de desplazamiento de la hoja

El siguiente paso es limitar el área de desplazamiento de la hoja y para ello debemos ir a la ficha Programador y pulsar el botón Propiedades:

En la ventana de Propiedades debemos especificar el rango $A$1:$E$15 que es el área que deseamos que permanezca desplazable dentro de la hoja. Debes asegurarte que las propiedades que estás observando sean de la hoja que contiene la información (en el ejemplo la Hoja1). Al cerrar la ventana de Propiedades observarás que no será posible utilizar las barras de desplazamiento para moverse fuera del área de trabajo que hemos establecido.

Ahora que ya sabes cómo limitar el área de trabajo en Excel puedes combinar este método con la protección de celdas para dejar la información completamente segura.

Guardar gráficos de Excel como imagenExcel no provee de un método directo para guardar gráficos como imagen sino que tenemos que utilizar métodos alternos para obtener un archivo GIF, JPG o PNG. En esta ocasión presentaré 3 métodos paraguardar los gráficos de Excel como imágenes.

Método 1: Utilizar un programa de edición de imágenes

Este método requiere el uso de algún programa de edición de imágenes como puede ser Microsoft Paint. Lo primero que debemos hacer es seleccionar el gráfico de Excel y copiarlo (CTRL + C), posteriormente creamos un nuevo archivo de Paint y pegamos (CTRL + V) el gráfico de Excel.

Finalmente debemos guardar el archivo de Paint en el formato de imagen que necesitemos y en la ubicación deseada. Una desventaja de este método es que si tenemos que convertir varios gráficos de Excel tendremos que hacerlo uno por uno.

Método 2: Guardar como Página web

Si tienes un libro de Excel con varios gráficos que deseas convertir en imágenes, una opción es guardar el libro como Página web. Al momento de guardar el libro asegúrate de seleccionar la opción Página web dentro de la lista Tipo.

Supongamos que has guardado el libro con el nombre “Graficas01”. Ahora debes ir a la carpeta donde se encuentra el archivo y podrás observar que Excel ha creado una carpeta llamada “Graficas01_archivos”. Dentro de esa nueva carpeta podrás encontrar las imágenes de todos los gráficos de tu libro de Excel.

Método 3: Utilizar una macro

El último método que te mostraré es un poco más avanzado ya que utiliza una macro para guardar todas las gráficas de la hoja activa como un archivo GIF. La macro es la siguiente:

Una vez creada la macro en el Editor de Visual Basic debes moverte a la hoja de Excel que contiene los gráficos y presionar ALT + F8 para desplegar el cuadro de diálogo Macro donde podremos elegir la macro recién creada.

La macro guardará cada gráfico como un archivo GIF y lo colocará en la misma carpeta de nuestro libro de Excel. Puedes descargar el libro de Excel que contiene esta macro para realizar las pruebas necesarias.

Gráfico de velocímetro en ExcelEn algunas ocasiones necesitamos ilustrar de manera gráfica el progreso de una tarea o de un proyecto y una alternativa es hacerlo a través de un gráfico de velocímetro, el único problema es que Excel no incluye este tipo de gráfico.

Sin embargo, aunque no tenemos una manera directa para crear un gráfico de velocímetro en Excel, podemos emplear algunas técnicas especiales para llegar a un resultado como el siguiente:

Existen diversas técnicas para crear este tipo de gráficos en Excel, pero en esta ocasión mostraré la técnica que considero la más sencilla de todas.

Creación de los datos a graficar

El primer paso para crear el gráfico de velocímetro es tener los datos que nos servirán como base para crear el gráfico. En este ejemplo graficaremos el objetivo de tener 100 nuevos clientes dentro de los próximos 10 días.

De esta manera puedes observar en la imagen superior que en la celda B1 he colocado la cantidad objetivo (100) y en el rango B4:B13 se encuentra la información de los clientes que he ido ganando día con día y el cual me dará el porcentaje alcanzado hasta el momento. Dicho porcentaje alcanzado lo puedes ver en la celda E3 que contiene la siguiente fórmula:

=SUMA(B4:B13) /B1

En la celda E4 tengo el porcentaje faltante para alcanzar el 100%, el cual podría ser una simple resta, pero he decidido colocar la siguiente fórmula:

=SI(E3<=100%, 100%-E3, 0%)

La fórmula indica que mientras la celda E3 sea menor al 100% el porcentaje restante a alcanzar será la resta 100% – E3, pero si el porcentaje alcanzado es superior al 100% entonces el porcentaje restante por alcanzar será de 0%. Esto nos ayudará a evitar una deformación del gráfico de velocímetro en caso de sobrepasar el objetivo. Finalmente la celda E5 es la suma de los porcentajes anteriores para verificar que tengo el 100%.

Datos para el gráfico de velocímetro

La parte más importante de los datos se encuentra en la columna F la cual explicaré a continuación, pero antes debemos tener muy claro que el gráfico de velocímetro que vamos a  crear es realmente la parte superior de un gráfico circular. Con esto en mente sabemos que tenemos que obtener los datos que darán forma a la mitad superior del gráfico circular.

La celda F3 indica el porcentaje alcanzado dentro del gráfico de velocímetro y tiene la siguiente fórmula:

=MIN(E3/2, 50%)

Esta fórmula nos asegura que el máximo valor posible para el porcentaje alcanzado es el 50% lo cual equivale a tener el medio circulo superior totalmente cubierto. Por otro lado, la celda F4 tiene la siguiente fórmula:

=E4/2

Con esta fórmula obtengo la equivalencia del porcentaje restante que debo colocar en la parte superior del gráfico circular. Y finalmente la celda F5 comprueba que los porcentajes anteriores suman el 50%.

Crear el gráfico de velocímetro en Excel

Solo resta crear el gráfico de velocímetro y para ello selecciono el rango de celdas F3:F5 e inserto un gráfico circular. Inmediatamente después borro la leyenda del gráfico y hago clic derecho sobre el gráfico para seleccionar la opción Dar formato a serie de datos y dentro de la sección Opciones de serie establecer un ángulo de giro de 270.

De esta manera tengo un gráfico circular con la sección de 50% justo por debajo del círculo. Ahora solo debo remover el color de relleno de la sección inferior y así mismo asignar los colores adecuados a las secciones superiores.

Finalmente agregamos las etiquetas necesarias para  dar la vista final al gráfico de velocímetro y adicionalmente podemos vincular un texto con la celda del porcentaje alcanzado de manera que veamos automáticamente reflejada la información. Observa cómo al ingresar nuevos datos, el gráfico de velocímetro se actualiza automáticamente:

Mostrar el máximo y mínimo en un gráficoEn esta ocasión haré una variación del artículo Formato condicional en gráficos de columna de manera que podamos mostrar los valores máximo y mínimo en un gráfico de líneas. Nuestra intención es tener marcadores dinámicos para dichos valores.

Suponiendo que los valores originales de las ventas del año pasado se encuentran en la columna B, he creado un par de series de datos auxiliares las cuales me dirán el valor máximo y mínimo de la lista.

La función de la columna Máximo es la siguiente:

=SI(B4=MAX($B$2:$B$13), B4, NOD())

La función de la columna Mínimo será similar y solo cambia por el uso de la función MIN:

=SI(B11=MIN($B$2:$B$13), B11, NOD())

Crear el gráfico de líneas

El siguiente paso es crear el gráfico de líneas utilizando todas las columnas. Es importante decir que a primera vista no observarás los puntos máximo y mínimo:

Crear los marcadores de máximo y mínimo

Para poder mostrar los puntos máximo y mínimo necesitamos seleccionar cada serie para modificar sus propiedades. La manera más sencilla es ir a la ficha Presentación, que se encuentra dentro de la ficha contextual Herramientas de gráficos. Dentro del grupo Selección actual debemos elegir de la lista la opciónSerie Máximo.

Inmediatamente después  debemos pulsar el botón Aplicar formato a la selección lo cual abrirá el cuadro de diálogo Formato de serie de datos.

En las Opciones de marcador selecciona la opción Integrado y elige un Tipo de marcador, así como un tamaño apropiado. Al pulsar el botón cerrar observarás el marcador de Máximo en el gráfico.

Realiza este mismo procedimiento para la Serie Mínimo y obtendrás un gráfico de líneas como el siguiente:

De esta manera hemos creado marcadores para mostrar el máximo y mínimo en un gráfico de líneas en Excel. Si los datos del gráfico cambian, los marcadores también se actualizarán automáticamente.

Gráficos combinados en ExcelUn gráfico combinado en Excel se refiere a combinar dos tipos diferentes de gráfico para hacer uno solo. Una combinación muy popular es la de un gráfico de columnas y otro grafico de línea como el siguiente:

Crear un gráfico combinado en Excel

Hacer un gráfico combinado es muy sencillo y en este ocasión te mostraré cómo hacerlo. Para este ejemplo utilizaré la siguiente información:

Selecciona toda la información e inserta un gráfico de columna:

Ahora debes hacer clic derecho sobre la serie de datos que convertiremos a línea, que en este caso es la serie Ganancia:

Selecciona la opción Cambiar tipo de gráfico de series y se mostrará el cuadro de diálogo Cambiar tipo de gráfico

Selecciona el tipo de gráfico Línea con marcadores y haz clic en Aceptar. El gráfico combinado aparecerá en pantalla:

Finalmente puedes agregar un título al gráfico y para ello debes selecciona el comando Título del gráfico que se encuentra en el grupo Etiquetas de la ficha Presentación: