Pregunta

Actualmente estoy intentando analizar una hoja de cálculo de inventario de activos que consta de PC y monitores.El problema que tengo en este momento es asociar una PC con sus dos monitores.

Por ejemplo, la hoja de cálculo se ve así:

Hoja 1 - Lista de PC

Monitor 1                    Monitor 2  

Employee Name    PC Tag Number      Serial ID     MonTag1 Tag  Serial ID       MonTag2 Tag  Serial ID
John Smith         ABC123456      123456789     ABC123423        5465614         

Hoja 2 - Todos los activos:

Parent Asset (Tag)  Tag Number    Serial ID         Description       
ABC123456            ABC123423     5465614           24" Monitor
ABC123456            XYZ123424     5456415           24" Monitor

Donde activo principal (etiqueta) = código de barras de computadora

Hice una BUSCARV de la celda del Número de etiqueta de la PC en la hoja 2 para encontrar el número de etiqueta del monitor conectado a esa PC.entonces hice un VLOOKUP del número de etiqueta contra la hoja 2 para encontrar el número de serie.

ahora necesito hacer otro VLOOKUP para obtener información del Monitor 2, necesito que la fórmula busque el activo principal similar al primero VLOOKUP pero proporcione el valor del segundo monitor en la hoja 2 (XYZ123424).

P.EJ

Monitor 1                    Monitor 2  

Employee Name    PC Tag Number      Serial ID     MonTag1 Tag  Serial ID       MonTag2 Tag  Serial ID
John Smith         ABC123456      123456789     ABC123423        5465614       XYZ123424  5456415 
¿Fue útil?

Solución

OK, no podía pensar en cómo escribir mi solución, así que aquí hay un archivo de muestra: https://app.box.com/s/4j79fu7vd93u0dc1rltg

Tengo que decir, tiendo a preferir el uso de índice y coincidir con VlookUP, de modo que Combo (PLUS OFFSET) lo que he usado para esta solución.

Espero que esto sea lo que tenías en mente ... y por favor perdona el nombre del compañero de trabajo de John Smith.Acabo de llegar a algo rápido para asegurarme de que trabajaría con más empleados y una lista de equipos barajados.: D

Otros consejos

El enlace en la respuesta aceptada aparentemente expiró, por lo que quizás sea hora de actualizar esta publicación.

No estoy seguro de si abordar múltiples devoluciones o múltiples criterios es más importante, pero construir una Fórmula ÍNDICE con el mas nuevo Función AGREGAR¹ proporcionar los números de fila coincidentes puede manejar ambos fácilmente.

La función AGREGAR produce cálculos cíclicos de la misma manera que la función AGREGAR produce cálculos cíclicos. Función SUMAPRODUCTO lo hace, pero también sufre un retraso en el cálculo cuando se aplican referencias de columna completas.Por ese motivo, todos los rangos de búsqueda se crearán dinámicamente seleccionando una columna y determinando el principio y el final de los datos.La fila final de esta columna se utilizará para todas las demás columnas de búsqueda como punto final de sus propias columnas.

La columna de búsqueda principal en la Hoja2 (ver imagen de datos de muestra a continuación) es la columna A;p.ej.[Etiqueta de activo principal].Los valores de esta columna se basan en texto, por lo que lo siguiente determinará la extensión de los datos.

Sheet2!$A$1:INDEX(Sheet2!$A:$A, MATCH("zzz", Sheet2!$A:$A))

Si la columna [Etiqueta de activo principal] hubiera sido numérica, esta fórmula sería:

Sheet2!$A$1:INDEX(Sheet2!$A:$A, MATCH(1E+99, Sheet2!$A:$A))

Hoja 2 - Todos los activos:

      vlookup_multiple_criteria_data

Hoja 1 - Lista de PC

      vlookup_multiple_criteria_formulas

La función AGREGAR devuelve el número de fila apropiado a ÍNDICE usando su Subfunción PEQUEÑA (p.ej. 15).Para devolver el segundo, tercero, etc.fila coincidente, todo lo que se requiere es elevar el PEQUEÑO k parámetro.

Los números de fila coincidentes se recuperan forzando cualquier número de fila que no coincida en una #DIV/0! estado de error e ignorar errores con el 6 opción.

Hoja1 - Fórmulas

Las fórmulas en A2 son,

=IFERROR(INDEX(Sheet2!$D:$D, AGGREGATE(15, 6, ROW(Sheet2!$A$1:INDEX(Sheet2!$A:$A, MATCH("zzz", Sheet2!$A:$A)))/(Sheet2!$A$1:INDEX(Sheet2!$A:$A, MATCH("zzz", Sheet2!$A:$A))=$B6), COLUMN(A:A))), "")

Complete a la derecha para devolver la lista del segundo monitor.Esto se logra utilizando el Función COLUMNA. COLUMN(A:A) devoluciones 1 pero el derecho lleno se convierte COLUMN(B:B) que regresa 2.Esto alimenta a los PEQUEÑOS k parámetro.

La fórmula en D6 es,

=IFERROR(INDEX(Sheet2!B:B, AGGREGATE(15, 6, ROW(Sheet2!$A$1:INDEX(Sheet2!$A:$A, MATCH("zzz", Sheet2!$A:$A)))/(Sheet2!$A$1:INDEX(Sheet2!$A:$A, MATCH("zzz", Sheet2!$A:$A))=$B6), 1)), "")

Eso recupera la primera [Etiqueta MonTag1].Llene hacia la derecha hasta E6 para recoger el primer [ID de serie].Copie la fórmula de D6 usando la barra de fórmulas (no copie la celda) a F6 como,

=INDEX(Sheet2!B:B, AGGREGATE(15, 6, ROW(Sheet2!A$1:INDEX(Sheet2!A:A, MATCH("zzz", Sheet2!A:A)))/(Sheet2!A$1:INDEX(Sheet2!A:A, MATCH("zzz", Sheet2!A:A))=$B6), 2))

Cambiar el k parámetro a 2.Esto recupera la [Etiqueta MonTag1] del segundo monitor.Llene hacia la derecha hasta G6 para recoger el segundo [ID de serie].

Nada de eso.Se pueden agregar múltiples columnas de criterios como declaraciones VERDADERO/FALSO multiplicadas por el denominador que produce el #DIV/0! errores.


¹ El Función agregada se introdujo con Excel 2010.No está disponible en versiones anteriores.
² El Función SI ERROR se introdujo con Excel 2007.No está disponible en versiones anteriores.
 
La compatibilidad con la versión anterior de Excel se puede mantener con el Paquete de compatibilidad de Microsoft Office para Word, Excel y PowerPoint.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top