KutoolsforOffice — Una solución, cinco potentes herramientas.Lograr más con menos esfuerzo.Venta de marzo: 20 % de descuento

¿Cómo buscar u obtener valores de otro libro de trabajo?

AutorKelly Fecha de modificación

En el trabajo diario con Excel, a menudo necesitará recuperar información almacenada en otro libro de trabajo. Ya sea que esté elaborando un resumen, conciliando registros entre departamentos o simplemente desee utilizar datos de referencia mantenidos por separado, saber cómo buscar valores y obtener información desde un libro distinto es fundamental. Esta funcionalidad mejora notablemente la coherencia de los datos y reduce los errores manuales, especialmente al trabajar con rangos de origen distribuidos, conjuntos de datos grandes o libros compartidos con compañeros.

Este artículo explora distintas formas de buscar u obtener valores en otro libro de trabajo y devolver datos relevantes directamente en su archivo de Excel activo. Presenta tres métodos prácticos que cubren escenarios habituales: la función clásica BUSCARV, que hace referencia a libros abiertos o cerrados; un enfoque mediante VBA para necesidades dinámicas; y técnicas alternativas basadas en fórmulas. Las explicaciones detalladas y los ejemplos le ayudarán a elegir el método más adecuado para su flujo de trabajo.


Buscar datos con VLOOKUP y Valor de devolución desde otro libro en Excel

Imagínese que está preparando una tabla de compra de frutas en Excel y necesita recuperar los últimos precios almacenados en otro libro. En lugar de copiar y pegar manualmente, puede buscar fácilmente los nombres de las frutas en su libro de origen y obtener automáticamente los precios correspondientes, asegurando precisión y actualizaciones en tiempo real. A continuación, le mostramos cómo lograrlo utilizando la función BUSCARV.

crear datos de ejemplobuscar verticalmente las frutas desde otro libro

Comience abriendo tanto el libro de trabajo en el que desea recopilar o resumir datos como el libro de origen que contiene la información (por ejemplo, precios).

Seleccione la celda en la que desee mostrar el precio de una fruta e introduzca la siguiente fórmula, sustituyendo los detalles según sea necesario:

=VLOOKUP(B2,[Price.xlsx]Sheet1!$A$1:$B$24,2,FALSE)

Después de escribir la fórmula, pulse Intro. Si quiere aplicar esta fórmula a más filas, simplemente arrastre el controlador de relleno (el cuadradito situado en la esquina inferior derecha de la celda) hacia abajo hasta cubrir todas las celdas que necesite.

introducir una fórmula para buscar verticalmente desde otro libro

arrastrar y rellenar la fórmula en otras celdas

Explicación y consejos:
(1) En la fórmula del ejemplo anterior:

  • B2 es la celda que contiene la fruta que quieres buscar.
  • Price.xlsx es el libro de origen que contiene los datos de precios. Asegúrese de que el nombre del archivo y su extensión sean correctos.
  • Sheet1 es la hoja del libro de origen que contiene la tabla de búsqueda.
  • A$1:$B$24 es el rango donde se encuentran tanto la clave (por ejemplo, nombres de frutas) como el valor (precios). Ajuste este rango si su área de datos es diferente.
  • 2 indica que los valores se devolverán desde la segunda columna del rango limitado.
  • FALSE garantiza que se requiera una coincidencia exacta; usar TRUE podría generar resultados incorrectos o aproximados.
(2) Si cierra el libro de origen, Excel modificará la referencia de la fórmula para incluir la Ruta de archivo (por ejemplo,)=VLOOKUP(B2,'W:\test\[Price.xlsx]Sheet1'!$A$1:$B$24,2,FALSE)). Asegúrese de que el archivo al que se hace referencia permanezca en esta ubicación; de lo contrario, las fórmulas podrían generar errores o #REF!. Si mueve o renombra el libro de origen, es posible que deba actualizar las referencias en las fórmulas.
(3) Si aparece un error #N/A, normalmente significa que el valor buscado no existe en el rango de origen. Compruebe la ortografía, los rangos y asegúrese de que todos los libros necesarios están disponibles.

 

Con este método, puede consolidar precios o información actualizados procedentes de fuentes externas. El valor de devolución se actualizará automáticamente siempre que cambie el libro de origen, siempre que dicho libro esté abierto o accesible en la ruta correcta.
Ventajas: Fácil de configurar para la mayoría de los usuarios; los datos se actualizan automáticamente.
Limitaciones: Las fórmulas pueden volverse engorrosas si cambian las rutas o los nombres del libro de trabajo, y las búsquedas entre libros cerrados pueden ralentizar archivos grandes o solicitarle que actualice los vínculos.

Para recuperaciones más complejas o si necesita consultar datos con frecuencia mientras el libro externo está cerrado, considere utilizar el método VBA u otras fórmulas alternativas que se indican a continuación.

cinta de notas ¿La fórmula es demasiado complicada de recordar? ¡Guárdela como una entrada de texto automático y reutilícela con un solo clic en el futuro!Leer más…     Prueba gratuita
una captura de pantalla de kutools for excel ia

Descubra la magia de Excel con KUTOOLS AI

  • Ejecución inteligente: Realice operaciones en celdas, analice datos y cree gráficos con comandos sencillos.
  • fórmulas personalizadas: Cree fórmulas a medida para optimizar sus flujos de trabajo.
  • Programación en VBA: Escriba e implemente código VBA con facilidad.
  • Interpretación de fórmulas: Entienda las fórmulas complejas con facilidad.
  • Traducción de texto: Rompa las barreras del idioma directamente en sus hojas de cálculo.
Potencie sus capacidades en Excel con herramientas impulsadas por inteligencia artificial.Descárguelo ahora¡y experimente una eficiencia como nunca antes!

Buscar datos con VLOOKUP y Valor de devolución desde otro libro cerrado mediante VBA

Configurar referencias de búsqueda con BUSCARV puede resultar confuso, especialmente si la ruta, el nombre o la hoja del archivo de origen cambian con frecuencia. En estos casos, automatizar el proceso mediante VBA se convierte en una solución más eficaz, ya que permite buscar valores incluso cuando el libro de origen está cerrado y gestiona automáticamente la selección del rango y la devolución de los datos.

Siga estos pasos para utilizar VBA en búsquedas entre libros:

1. Pulse simultáneamente Alt + F11 para abrir la ventana del editor de Microsoft Visual Basic para Aplicaciones.

2.En el editor de VBA, haga clic en Insertar>Módulo, luego copie y pegue el siguiente código en la ventana del módulo:

VBA: Buscar datos y Valor de devolución desde otro libro cerrado

Option Explicit

' Convert column number to column letter
Private Function GetColumn(ByVal Num As Integer) As String
    If Num <= 26 Then
        GetColumn = Chr(Num + 64)
    Else
        GetColumn = Chr((Num - 1) \ 26 + 64) & _
                    Chr((Num - 1) Mod 26 + 65)
    End If
End Function

Sub FindValue()

    Dim xAddress As String
    Dim xString As String
    Dim xFileName As Variant
    Dim xUserRange As Range
    Dim xRg As Range
    Dim xFCell As Range
    Dim xSourceSh As Worksheet
    Dim xSourceWb As Workbook
    
    On Error Resume Next
    
    ' Get current selection address
    xAddress = Application.ActiveWindow.RangeSelection.Address
    
    ' Ask user to select lookup range
    Set xUserRange = Application.InputBox( _
        Prompt:="Lookup values :", _
        Title:="Kutools for Excel", _
        Default:=xAddress, _
        Type:=8)
    
    If Err.Number <> 0 Then Exit Sub
    On Error GoTo 0
    
    ' Limit selection to used range
    Set xUserRange = Application.Intersect(xUserRange, _
                                           Application.ActiveSheet.UsedRange)
    
    ' Ask user to select source workbook
    xFileName = Application.GetOpenFilename( _
                "Excel Files (*.xlsx), *.xlsx", _
                1, _
                "Select a Workbook")
                
    If xFileName = False Then Exit Sub
    
    Application.ScreenUpdating = False
    
    ' Open source workbook
    Set xSourceWb = Workbooks.Open(xFileName)
    Set xSourceSh = xSourceWb.Worksheets.Item(1)
    
    ' Build external reference string
    xString = "='" & xSourceWb.Path & Application.PathSeparator & _
              "[" & xSourceWb.Name & "]" & _
              xSourceSh.Name & "'!$"
    
    ' Loop through user range
    For Each xRg In xUserRange
    
        ' Find matching value in source sheet
        Set xFCell = xSourceSh.Cells.Find( _
                        What:=xRg.Value, _
                        LookIn:=xlValues, _
                        LookAt:=xlWhole, _
                        MatchCase:=False)
        
        ' If found, write formula 2 columns to the right
        If Not xFCell Is Nothing Then
            xRg.Offset(0, 2).Formula = _
                xString & _
                GetColumn(xFCell.Column + 1) & _
                "$" & xFCell.Row
        End If
        
    Next xRg
    
    ' Close source workbook without saving
    xSourceWb.Close False
    
    Application.ScreenUpdating = True

End Sub

Detalles importantes:

  • El código devuelve el valor coincidente en una columna situada dos posiciones a la derecha del rango de búsqueda. Por ejemplo, si selecciona la columna B, los resultados aparecerán en la columna D.
  • Si desea que el resultado aparezca en una columna distinta, cambie el número 2 en xRg.Offset(0,2).Formulapor otro valor (por ejemplo,)1 para la columna siguiente o 3 para la tercera columna a la derecha).
  • Seleccione el libro y la hoja correctos cuando se le solicite; el código siempre utilizará la primera hoja del archivo seleccionado. Si su hoja de origen no es la primera, modifique el código.
  • Guarde siempre su archivo antes de ejecutar macros desconocidas, ya que estas no se pueden deshacer una vez ejecutadas.

3. Ejecute la macro pulsando la tecla F5 o haciendo clic en el botón Ejecutar. Aparecerá un cuadro de diálogo titulado «Kutools para Excel» que le pedirá que seleccione el rango de celdas cuyos valores desea buscar.

especificar el rango de datos que buscará

4. Tras seleccionar su rango, haga clic en Aceptar. Poco después, aparecerá otro cuadro de diálogo que le pedirá que elija el libro de origen (incluso si está cerrado). Navegue hasta el archivo correspondiente, selecciónelo y, a continuación, haga clic en Abrir para confirmar.

seleccionar el libro donde buscará los valores

Cuando la macro finalice, los valores correspondientes del libro de origen se devolverán a la columna de destino en su Hoja de Cálculo actual. Si algunos valores no aparecen, compruebe que los rangos de valores de búsqueda de la Hoja de Cálculo actual coincidan exactamente con los de los datos de origen (las mayúsculas y minúsculas, así como los espacios iniciales y finales, son relevantes para una coincidencia exacta).

los valores correspondientes se obtienen desde un libro cerrado

Ventajas: Gestiona libros cerrados, evita rutas de archivo codificadas en fórmulas y ofrece flexibilidad para seleccionar archivos de origen sobre la marcha.
Consideraciones: Las macros deben estar habilitadas; VBA podría no funcionar en hojas protegidas o con formatos que no sean archivos de Excel. Guarde su libro con compatibilidad para macros (*.xlsm) si piensa utilizar este método con frecuencia.

Si encuentra errores, asegúrese de que no haya errores tipográficos en los nombres de las hojas o archivos, de que el rango seleccionado sea el adecuado y de que las rutas de archivo sean accesibles. Para depurar, considere recorrer el código línea por línea mediante el editor de VBA.


Soluciones alternativas con fórmulas para búsquedas entre libros

Además del enfoque clásico con BUSCARV y VBA, existen alternativas para realizar búsquedas entre libros en Excel. Estas resultan especialmente útiles cuando su estructura de datos es distinta, prefiere fórmulas en lugar de macros o requiere mayor flexibilidad —por ejemplo, buscar hacia la izquierda o aplicar varios criterios simultáneamente.

Uso de las funciones ÍNDICE y COINCIDIR entre libros

Con la combinación de ÍNDICE y COINCIDIR, puede buscar valores en cualquier dirección: hacia la izquierda, la derecha, arriba o abajo, incluso en otro libro. Esta flexibilidad resulta especialmente útil cuando la columna de la que desea recuperar datos no se encuentra a la derecha de la columna de búsqueda, una limitación inherente a BUSCARV.

Escenario: Supongamos que desea recuperar un precio desde otro libro abierto en el que el nombre de la fruta podría no estar en la primera columna.

1.En su libro de destino, seleccione la celda donde desea mostrar el resultado (por ejemplo, C2) e introduzca la fórmula siguiente (sustituya el libro, la hoja y el rango según sea necesario):

=INDEX([Price.xlsx]Sheet1!$B$1:$B$24, MATCH(B2, [Price.xlsx]Sheet1!$A$1:$A$24,0))

2. Pulse Intro. Luego, copie o rellene la fórmula en las demás filas según sea necesario arrastrando el controlador de relleno.

Explicación de los parámetros:

  • [Price.xlsx]Sheet1!$B$1:$B$24: El rango en el que se almacenan los precios.
  • B2: El nombre de la fruta que deseas buscar.
  • [Price.xlsx]Sheet1!$A$1:$A$24: El rango donde buscará su valor de consulta.
  • El 0 al final garantiza una coincidencia exacta.
Si el libro de origen está cerrado, Excel actualizará la ruta de archivo en la fórmula. Al igual que con VLOOKUP, asegúrese de que la ruta siga siendo válida.

Puntos fuertes: Funciona tanto para búsquedas a la izquierda como a la derecha y admite diseños más flexibles.
Consejos: Evite mover o renombrar archivos de origen sin actualizar antes su fórmula.

Uso de BUSCARX para búsquedas entre libros (Excel 365 y versiones posteriores)

Si utiliza Excel 365 o Excel 2021, la nueva función BUSCARX ofrece aún mayor flexibilidad: le permite encontrar coincidencias exactas con facilidad, realizar búsquedas hacia la izquierda y gestionar automáticamente los valores ausentes sin generar errores.

Para utilizarla:
En la celda donde desee el resultado, introduzca:

=XLOOKUP(B2, [Price.xlsx]Sheet1!$A$1:$A$24, [Price.xlsx]Sheet1!$B$1:$B$24, "Not found")

Pulse Intro y copie la fórmula según sea necesario. Aquí, «No encontrado» puede cambiarse por cualquier texto personalizado que desee mostrar si la búsqueda no obtiene resultados.

Ventajas: Es más flexible que BUSCARV y mucho más sencillo de gestionar; además, evita muchos errores comunes asociados a fórmulas antiguas. No obstante, BUSCARX solo está disponible en versiones recientes de Excel.

Para requisitos complejos, como coincidencias con múltiples criterios, búsquedas en hojas combinadas o la necesidad de evitar problemas de rendimiento en archivos muy grandes, considere organizar los datos de origen en tablas estructuradas o utilizar la herramienta Power Query de Excel para vincular datos eficientemente entre varios libros.

Las mejores herramientas de productividad para Office

🤖KUTOOLS AI Asistente: Revolucione Análisis de datos basándose en:Ejecución Inteligente   |  Generar código|  Crear fórmulas personalizadas  |  Analizar datos y generar gráficos|  Invocar Funciones mejoradas
Funciones populares:Buscar, resaltar o Marcar duplicados   |  Eliminar filas en blanco   |  Combinar Columnas o celdas sin perder datos   |   Redondeo sin usar fórmulas...
Super BUSCARV:Búsqueda vertical (VLookup) con múltiples criterios  |  Búsqueda vertical (VLookup) con múltiples valores  |   Búsqueda vertical (VLookup) entre varias hojas   |   Coincidencia difusa....
Lista desplegable avanzada:Crear rápidamente una lista desplegable   |  Lista desplegable dependiente   |  Lista desplegable de selección múltiple....
Gestor de columnas:Añadir un número específico de columnas|Mover columnas|Alternar el estado de visibilidad de columnas ocultas|Comparar rangos y columnas...
Funciones destacadas:Cuadrícula de enfoque   |  Vista de diseño   |Barra de fórmulas mejorada   | Gestor de libros y hojas   |  Biblioteca de recursos(Texto automático)|  Selector de Fecha   |  Combinar Hojas de Cálculo  |  Cifrar/Descifrar celdas   | Enviar correos electrónicos desde una lista   |  Super Filtro   |   Filtro especial(Filtrar celdas con fuente en negrita/cursiva/tachado...) ...
Principales conjuntos de herramientas 15:12 Herramientasde texto(Agregar texto,Eliminar caracteres específicos, ...)|   50+Tiposde gráfico(Diagrama de Gantt, ...)|   40+ Fórmulas prácticas(Calcular la edad basada en la fecha de nacimiento, ...)|   19 Herramientasde inserción(Insertar Código QR,Insertar imagen desde ruta, ...)|   12 Herramientasde conversión(Convertir a palabras,Conversión de moneda, ...)|   7 Herramientasde combinación y división(Combinar filas avanzado,Dividir celdas, ...)|...y muchas más
Use Kutools en su idioma preferido: compatible con inglés, español, alemán, francés, chino y 40+ más idiomas.¡

Potencie sus habilidades en Excel con Kutools para Excel y experimente una eficiencia como nunca antes.Kutools para Excel ofrece más de 300 funciones avanzadas para aumentar su productividad y Ahorrar tiempo.Haga clic aquí para obtener la función que más necesita...


Office Tab aporta una interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil

  • Active la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abra y cree varios documentos en nuevas pestañas dentro de la misma ventana, en lugar de hacerlo en ventanas separadas.
  • ¡Aumente su productividad en un 50 % y elimine cientos de clics del ratón cada día!

Todos los complementos de Kutools en un solo instalador.

Kutools for Office es la suite que incluye complementos para Excel, Word, Outlook y PowerPoint, además de Office Tab Pro, ideal para equipos que trabajan en distintas aplicaciones de Office.

ExcelWordOutlookTabsPowerPoint
  • Suite integral— complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
  • Un instalador, una licencia— configuración en minutos (compatible con MSI)
  • Rendimiento mejorado en conjunto— productividad optimizada en todas las aplicaciones de Office
  • Prueba gratuita de 30 días con todas las funciones— sin registro ni tarjeta de crédito
  • La mejor relación calidad-precio— ahorre frente a la compra individual de complementos