miércoles, 10 de junio de 2009

Extraer valores de una tabla con fórmulas matriciales

Descargar el fichero: matricial_extrae.xlsx

Vamos a extraer valores de una tabla mediante funciones matriciales. Tenemos dos métodos. El primero válido para datos numéricos y el segundo válido para cualquier tipo de datos, numéricos o de texto. Para el segundo caso utilizaremos la función INDICE, que permite extraer un cierto valor de una matriz, indicando la fila y columna donde se encuentra el valor que deseamos extraer.


Método 1

Unicamente válido para valores numéricos. Para texto da error. Para la celda I10 se utiliza la expresión:

=SUMA((date=I$9)*datos*(+emp=$H10))

es una fórmula matricial que se ha de validar con Control+Mayúsculas+Intro.

Método 2

Válido también para texto. Se basa en la función:

=INDICE(matriz;núm_fila;núm_columna)

que permite extraer un elemento de una matriz, de la que se indica la fila y columna.


7 comentarios:

  1. hola,saludos, tengo una duda en excel, necesito obtener los diez empleados con mayor antigüedad en una tabla de excel, la tabla contiene en columnas clave, nombre, apellidos, fecha de ingreso, sueldo, departamento y antigüedad, lo he intentado con tablas dinamicas y filtros pero no se como especificar que solo me devuelva los diez empleados más veteranos en la empresa, es una lista de 149 registros, gracias

    ResponderEliminar
  2. Hola Olga.

    Un método para conseguirlo es el siguiente.

    Añade una nueva columna en tu base de datos original. La columna contiene una formula condicional =SI que te diga si el trabajador tiene una antigüedad que esté entre las 10 de mayor antigüedad. Esto se hace con la función JERARQUIA.

    Luego creas una Tabla Dinámica sobre esa base de datos y pones el campo nuevo que has creado en esa columna como filtro de la Tabla Dinámica. De esta forma al activar el filtro únicamente te dará los 10 trabajadores con mayor antigüedad.

    Si ves que no te sale me lo comentas de nuevo y hacemos un ejemplo.

    Un saludo.

    ResponderEliminar
  3. Adolfo muy buenos días.
    Te felicito primero que todo por tu blog, me ha servido mucho.
    Tengo una base de datos con varias columnas una de ella es el No. de Contrato y otra por ejemplo No. de Consecutivo. Los contratos aparecen en muchas ocasiones algunos, asociados a consecutivos diferentes.
    Como puedo obtener una lista en la cual yo pueda tener los contratos y me arroje los consecutivos en los cuales aparece?
    Es decir quiero organizarlos por columnas así: Contrato Consecutivo1 Consecutivo2 Consecutivo3 Consecutivo4

    ResponderEliminar
    Respuestas
    1. Hola zadig.
      Creo que te puede ayudar el siguiente post del blog:
      BUSCARV para valores repetidos
      Se trata de usar la función BUSCARV y que muestre todas las coincidencias y no solo la primera.
      Un saludo.

      Eliminar
  4. Buenas tardes, tengo una tabla numérica con 160 datos y se requiere seleccionar dentro de la misma tabla, los 10 números mayores de los registros allí dispuestos. Gracias!

    ResponderEliminar
  5. Hola buenas noches, deseaba un poco de su ayuda ya que me encuentro perdido en estos momentos, deseo sacar un valor númerico de las ventas de mis agentes por ejemplo, Juan tuvo "X" Ventas Satisfactorias y "Y" No Satisfactorias, como puedo extraer un valor de la cantidad de cada una de ellas? Gracias por su ayuda

    ResponderEliminar
  6. como puedo extraer una informacion de una base de datos.
    En mi BD tengo varias zonas con folios, pero en mi hoja de trabajo si le capture 20.... me extrae el 1ro que encuentre.

    Ejemplo... de la zona20... quiero ver mis folios que contengo.
    Z20
    folio ....
    Folio ...
    Folio ...
    lo quiero que en mi hoja de excel pueda poner todos los folios que contenga esa zona.

    como le hago

    ResponderEliminar