Tengo dos hojas de trabajo en dos archivos de Excel diferentes. Ambos contienen una lista de nombres, números de identificación y datos asociados. Una es una lista maestra que incluye campos demográficos generales, y la otra es una lista que solo incluye nombre e identificación, y una dirección. Esta lista fue reducida de la lista maestra por otra oficina.
Quiero usar la segunda lista para filtrar la primera. Además, quiero que los resultados incluyan otros campos de la hoja de trabajo maestra junto con los campos de dirección de la segunda hoja de trabajo. Sé cómo podría hacer esto muy fácilmente con una unión interna de la base de datos, pero no tengo muy claro cómo hacerlo de manera eficiente en Excel. ¿Cómo se pueden unir dos hojas de trabajo en Excel? Puntos de bonificación para mostrar cómo hacer combinaciones externas también, y preferiría saber cómo hacerlo sin necesidad de una macro.
fuente
=INDEX ( Column_I_want_a_return_value_from , ( MATCH ( My_Lookup_Value , Column_I_want_to_Lookup_against , 0 ))
Respuestas:
Por 2007+ uso
Data
>From Other Sources
>From Microsoft Query
:Excel File
y selecciona tu primer excel(si no ve ninguna lista de columnas, asegúrese de marcar
Options
>System Tables
)Data
>Connections
> [elija la conexión que acaba de crear]>Properties
>Definition
>Command text
Ahora puede editar esto
Command text
como SQL. No estoy seguro de qué sintaxis se admite, pero probé uniones implícitas, "unión interna", "unión izquierda" y uniones que funcionan. Aquí hay una consulta de muestra:fuente
Apoye la respuesta aceptada. Solo quiero enfatizar en "elegir columnas (si no ve ninguna lista de columnas, asegúrese de marcar Opciones> Tablas del sistema)"
Una vez que seleccione el archivo de Excel, es muy probable que vea un
this data source contains no visible tables
mensaje, y las pestañas y columnas disponibles no son ninguna. Microsoft admitió que es un error que las pestañas en los archivos de Excel se traten como "Tablas del sistema", y la opción para "Tablas del sistema" no está seleccionada de forma predeterminada. Así que no se asuste en este paso, solo necesita hacer clic en "opción" y marcar "Tablas del sistema", luego verá las columnas disponibles.fuente
VLOOKUP y HLOOKUP podrían usarse para buscar claves primarias coincidentes (almacenadas vertical u horizontalmente) y devolver valores de columnas / filas de 'atributos'.
fuente
Puede usar Microsoft Power Query, disponible para versiones más nuevas de Excel (similar a la respuesta aceptada, pero mucho más simple y fácil). Las llamadas de Power Query se unen a 'fusiones'.
La forma más fácil es tener sus 2 hojas de Excel como tablas de Excel. Luego, en Excel, vaya a la pestaña de la cinta de Power Query y haga clic en el botón 'De Excel'. Una vez que haya importado ambas tablas en Power Query, seleccione una y haga clic en 'Combinar'.
fuente
Si bien creo que la respuesta de Aprillion con Microsoft Query es excelente, me inspiró a usar Microsoft Access para unirme a las hojas de datos que encontré mucho más fáciles.
Necesitas tener instalado MS Access, por supuesto.
Pasos:
Get External Data
para importar sus datos de Excel como nuevas tablas.Relationships
para mostrar cómo se unen sus tablas.External Data->Export to Excel
para generar sus resultados.Realmente no podría haberlo hecho sin la gran respuesta de Aprillion.
fuente
No puede realizar uniones de estilo SQL en tablas de Excel desde Excel. Dicho esto, hay varias formas de lograr lo que estás tratando de hacer.
En Excel, como dice Reuben, las fórmulas que probablemente funcionarán mejor son
VLOOKUP
yHLOOKUP
. En ambos casos, coincide en una fila única y devuelve el valor de la columna \ fila dada a la izquierda \ abajo de la identificación encontrada.Si solo desea agregar un par de campos adicionales a la segunda lista, agregue las fórmulas a la segunda lista. Si desea una tabla de estilo de "combinación externa", agregue la
VLOOKUP
fórmula a la primera listaISNA
para probar si se encontró la búsqueda. Si la Ayuda de Excel no le brinda suficientes detalles sobre cómo usarlos en su instancia particular, infórmenos.Si prefiere usar SQL, luego vincule los datos a su programa de base de datos, cree su consulta y exporte los resultados nuevamente a Excel. (En Access puede importar hojas de trabajo de Excel o rangos con nombre como una tabla vinculada).
fuente
En XLTools.net hemos creado una buena alternativa para que MS Query funcione especialmente con consultas SQL en tablas de Excel. Se llama XLTools SQL Queries . Es mucho más fácil de usar en lugar de MS Query y funciona muy bien si solo necesita crear y ejecutar SQL, sin VBA, sin manipulaciones complejas con MS Query ...
Con esta herramienta, puede crear cualquier consulta SQL en las tablas de los libros de Excel utilizando el editor SQL incorporado y ejecutarla inmediatamente con la opción de colocar el resultado en una hoja de trabajo nueva o existente.
Puede usar casi cualquier tipo de combinación, incluida la IZQUIERDA EXTERIOR IZQUIERDA (solo no se admite la UNIÓN EXTERIOR DERECHA y la UNIÓN EXTERNA COMPLETA).
Aquí hay un ejemplo:
fuente
Para usuarios de Excel 2007: Datos> Desde otras fuentes> Desde Microsoft Query> busque el archivo Excel
De acuerdo con este artículo , las consultas desde XLS versión 2003 podrían dar como resultado "Esta fuente de datos no contiene tablas visibles". error porque sus hojas de trabajo se tratan como tabla SYSTEM. Por lo tanto, verifique las "Tablas del sistema" en las opciones del cuadro de diálogo "Asistente para consultas: elegir columnas" cuando cree la consulta.
Para definir su unión: cuadro de diálogo Consulta de Microsoft> menú Tabla> Uniones ...
Para devolver datos a su hoja de Excel original, elija "Devolver datos a hoja de Excel" en el cuadro de diálogo Microsoft Query> Menú Archivo.
fuente
Si está lo suficientemente familiarizado con las bases de datos, puede usar SQL Server para conectar ambas hojas de trabajo como servidores vinculados y luego usar T-SQL para hacer su trabajo de datos de fondo. Luego termine conectando Excel nuevamente a SQL y extraiga los datos en una tabla (regular o pivote). También puede considerar usar Powerpivot; permitirá uniones entre cualquier fuente de base de datos, incluido Excel utilizado como bases de datos planas.
fuente
Buscando el mismo problema, me encontré con RDBMerge , que creo que es una forma fácil de usar para combinar datos de múltiples libros de Excel, archivos csv y xml en un libro de trabajo de resumen.
fuente