jueves, septiembre 24, 2015

JLD de vacaciones

Después de varios años de ausencia, ha llegado el momento de volver a visitar el terruño y como Octubre es el mejor mes del año para visitar Buenos Aires, ahí voy.

Desde el próximo viernes y por tres semanas estaré gozando de unas vacaciones en la Argentina. El blog estará inactivo y no contestaré consultas ni comentarios. A mi vuelta trataré de ponerme al día.

Aprovecho la oportunidad para agradecer a los lectores de este blog y a todos los que me alientan a seguir adelante con su cálido agradecimiento.

Hasta la vuelta!

Jorge



martes, septiembre 22, 2015

Ocultar filtros en tablas dinámicas

Cuando creamos una tabla dinámica Excel instala filtros en los distintos campos (filas, columnas y filtro del informe)


Si por algún motivo queremos ocultar las flechas de los filtros, por ejemplo para evitar que un usuario cambie el contenido del informe, podemos usar la opción "Encabezados de campos" en el grupo Mostrar en las Opciones de las tablas dinámicas

Pero esta opción tiene un problema: no sólo quita las flechas sino también los encabezados

y como bono adicional, no quita el encabezado ni la flecha del filtro del informe. Los encabezados Ciudad, Agente y Año han desaparecido del informe dejando a nuestro desprevenido y poco informado usuario cavilando sobre si Janet Leverling es un agente de ventas o tal vez un cliente.

Para quitar las flechas de los filtros sin quitar los encabezados podemos usar esta macro

Sub ocultar_Filtros()
Dim ptbl As PivotTable
Dim pfld As PivotField
    Set ptbl = ActiveSheet.PivotTables(1)
      For Each pfld In ptbl.PivotFields
          pfld.EnableItemSelection = False
      Next pfld
End Sub


Esta animación muestra el resultado


Para volver a mostrar los filtros usamos esta macro, igual a la anterior pero con la propiedad EnableItemSelection con el valor True

Sub mostrar_Filtros()
Dim ptbl As PivotTable
Dim pfld As PivotField
    Set ptbl = ActiveSheet.PivotTables(1)
      For Each pfld In ptbl.PivotFields
          pfld.EnableItemSelection = True
      Next pfld
End Sub


De la misma manera podemos ocultar el filtro de un determinado campo. Para evitar que el usuario pueda filtrar el informe por Agente usamos esta macro

Sub ocultar_Item()
Dim ptbl As PivotTable
Dim pfld As PivotField

    Set ptbl = ActiveSheet.PivotTables(1)
    ptbl.PivotFields("Agente").EnableItemSelection = False
  
End Sub


Para volver a mostrar el filtro del campo cambiamos el valor de la propiedad EnableItemSelection a True.


miércoles, septiembre 09, 2015

Guía de tipo de errores en Excel

Cuando Excel no puede resolver una fórmula el resultado es un valor de error. Según el valor (#N/A, por ejemplo) Excel trata de indicarnos qué es lo que está causando el error. Conocer el significado de cada uno de estos valores es el primer paso para corregir el error.

Los posibles valores son:

#¡DIV/0! - El más obvio de los errores, se produce cuando nuestra fórmula intenta dividir algún valor por 0


#¡VALOR! - Ocurre cuando alguno de los valores introducidos, o la referencia que los contiene, no es del tipo requerido. Por ejemplo, si queremos sumar un número y un texto

#N/A - Cuando usamos funciones de búsqueda (BUSCARV, INDICE, etc.), si el valor de búsqueda no se encuentra dentro del rango de búsqueda, el resultado es "no disponible" (#N/A en inglés: not available). En este ejemplo, Carlos no figura en la lista de nombres, por lo que el resultado en la celda F3 es #N/A


#¡REF! - Cuando una referencia en una fórmula no existe, Excel crea un error de referencia. Esta situación puede darse cuando eliminamos una fila o columna o cuando movemos o copiamos una fórmula con referencias relativas de manera que se crea una dirección inexistente (referencia no válida), En este ejemplo copiamos la fórmula de la C4 a la celda A2; como las referencias son relativas, C2+C3 en la celda C4 debe transformarse en A0+A1, pero A0 no existe, por lo que obtenemos #¡REF!


#¡NULO! - Ocurre cuando Excel no puede resolver el rango emplpeado en una fórmula, como en este ejemplo, donde hemos puesto un espacio entre las celdas de la referencia


#¿NOMBRE? - Cuando Excel no puede reconocer un texto como nombre definido, vemos este valor de error. En este ejemplo el nombre "IVA" no ha sido definido


#¡NUM! - Aparece cuando nuestra fórmula produce un número mayor del límite de Excel (9.99999999999999E+307), como en este ejemplo


En esta nota tratamos el tema de las funciones para manejar errores.