lunes, 15 de junio de 2009

Contar en una Tabla Dinámica

Descargar el fichero: tdcontar.xlsx

Las Tablas Dinámicas son la revolución de las hojas de cálculo. Permiten obtener informes de forma rápida y flexible. Son "un sueño" para los controler y los gestores que han de reportar informes complejos y de forma rápida. En esta ocasión, vamos a presentar un caso donde a la Tabla Dinámica le cuesta constestar a nuestra pregunta. La solución será aplicar una fórmula al contenido de la propia tabla dinámica. Usaremos la famosa función IMPORTARDATOSDINAMICOS.

Disponemos de una pequeña base de datos con unos clientes, productos y valores. Deseamos saber: Cuantos clientes adquieren el Producto 1. A simple vista, podemos apreciar que la respuesta es 2.

Realizamos la Tabla Dinámica que se ve en la imagen y observamos que el Total General del Producto 1 da como resultado 3 (celda azul). Aquí lo que esta haciendo la Tabla Dinámica es contar cuantas líneas de la Base de Datos contiene el Producto 1. Pero esto no responde a nuestra pregunta, ya que nosotros deseamos saber cuántos clientes han adquirido el Producto 1, y la respuesta es 2. Concretamente los clientes que han adquirido el Producto 1 son ABC y FGH.

Para contestar correctamente a nuestra pregunta creamos otra tabla vinculando a la Tabla Dinámica anterior, con lo cual surge la función: IMPORTARDATOSDINAMICOS. Y sobre ella vamos a construir la siguiente fórmula para la celda G14:

=--(IMPORTARDATOSDINAMICOS("Valor";$F$5;"Cliente";$F14;"Producto";G$13)>0)

Con ello lo que pretendemos es determinar cuantos valores de la Tabla Dinamica son estrictamente mayores que cero. Esto hace que el valor 2 de la celda G7 ahora se cuente como 1, ya que la condición VERDADERO se transforma en un 1. Esto se consigue con los dos signos menos al incio de la fórmula.



6 comentarios:

  1. Buenos dias. Espero estes bien.

    Desde ya muchas gracias por todo lo que haces por la comunidad. Sinceramente asombra tu conocimiento.

    Te cuento que tengo una Tabla Dinamica que no logro resolver una CUENTA.

    La Tabla de Datos de origen, se ocupa de registrar las tereas de una persona dia a dia.

    Selecciono FILTRO = MES
    Selecciono FILA = NOMBRE
    Selecciono COLUMNA = DÍA
    Selecciono VALORES = CUENTA DÍAS.

    Los valores que encuentro en las filas son, por ejemplo:
    1 - 2 - 1 - 3 - 1

    Esto siginificaria que tuve 8 registros en 5 dias.

    Las Tablas Dinamicas me dan el resultado total como 8 pero, en realidad, lo que a mi me interesa es que me da un 5. Es decir, que CUENTA en vez de SUMAR.

    Entiendo que la resolución esta cerca a lo que explicas en este articulo, pero intento aplicarla y no logro el resultado esperado.

    Desde ya mil gracias.

    ResponderEliminar
    Respuestas
    1. Hola Lucas.
      No se si será tan sencillo el caso que planteas. He creado una base de datos como imagino que es la que tienes.

      Fecha Operario Actuaciones
      01/09/2014 Luis 1
      02/09/2014 Luis 2
      03/09/2014 Luis 1
      04/09/2014 Luis 3
      05/09/2014 Luis 1

      He creado una tabla dinámica y si se suma el total efectivamente sale 8, pero si elijo cuenta el total sale 5.

      Te dejo unos enlaces a imágenes con lo que me sale.

      http://i.imgur.com/Zq3E0ch.png

      http://i.imgur.com/LnFVi1a.png

      http://i.imgur.com/O07NIHn.png

      Un saludo.

      Eliminar
  2. Buen día Adolfo.

    Gracias por la información compartida en tu foro, ha sido de mucha ayuda.

    Una consulta:
    En una base de datos tengo la siguiente información:

    Grupo Cod
    A 123
    B 345
    B
    C 654
    C
    D

    Los datos de la columna "Cod" se obtienen mediante un buscarv o mediante indice-coincidir:
    =SI.ERROR(BUSCARV(A2;[15092015.xlsx]Hoja1!$A:$C;3;0);"")

    En una tabla dinámica necesito obtener lo siguiente:

    Grupo CantTotal CantConCod
    A 1 1
    B 2 1
    C 2 1
    D 1 0

    Obtener la cantidad de registros por cada grupo y la cantidad de registros que tienen código. Debido a que el código se obtiene mediante fórmulas, para excel esas celdas no están vacías y al utilizar la opción "cuenta", me reporta que todas tienen.

    Gracias de antemano.

    ResponderEliminar
  3. hola una pregunta . a mi me.dieron un archivo y lo hice la tabla dinamica y en cada pregunta puse la respuesta en letras osea una frase indicando el resultado. Porque en el examen dice xrear una tabla e indicar lo siguiente. Y yo lo siguiente que hice fue escribirlo en letras. O habra sido mejor en cada pregunta copiar la misma tabla dinamica e indicando. Porque no me llaman para mi segunda entrevista de trabajo :(.

    ResponderEliminar
  4. hola una pregunta . a mi me.dieron un archivo y lo hice la tabla dinamica y en cada pregunta puse la respuesta en letras osea una frase indicando el resultado. Porque en el examen dice xrear una tabla e indicar lo siguiente. Y yo lo siguiente que hice fue escribirlo en letras. O habra sido mejor en cada pregunta copiar la misma tabla dinamica e indicando. Porque no me llaman para mi segunda entrevista de trabajo :(.

    ResponderEliminar