¿Cómo copiar el formato de origen de la celda de búsqueda al usar Vlookup en Excel?
En artículos anteriores, hemos hablado sobre cómo mantener el color de fondo al buscar valores con Vlookup en Excel. En este artículo, vamos a introducir un método para copiar todo el formato de la celda resultante al realizar una búsqueda con Vlookup en Excel. Por favor, sigue los siguientes pasos.
Copiar el formato de origen al usar Vlookup en Excel con una función definida por el usuario
Copiar el formato de origen al usar Vlookup en Excel con una función definida por el usuario
Supongamos que tienes una tabla como se muestra en la siguiente captura de pantalla. Ahora necesitas verificar si un valor específico (en la columna E) está en la columna A y devolver el valor correspondiente con el formato de la columna C. Sigue los siguientes pasos para lograrlo.
1. En la hoja de cálculo que contiene el valor que deseas buscar con Vlookup, haz clic derecho en la pestaña de la hoja y selecciona Ver código desde el menú contextual. Ver captura de pantalla:
2. En la ventana abierta de Microsoft Visual Basic para Aplicaciones, copia el siguiente código VBA en la ventana de Código.
Código VBA 1: Vlookup y devolver valor con formato
Sub Worksheet_Change(ByVal Target As Range)
'Update by Extendoffice 20211203
Dim I As Long
Dim xKeys As Long
Dim xDicStr As String
On Error Resume Next
Application.ScreenUpdating = False
Application.CutCopyMode = False
xKeys = UBound(xDic.Keys)
If xKeys >= 0 Then
For I = 0 To UBound(xDic.Keys)
xDicStr = xDic.Items(I)
If xDicStr <> "" Then
Set xRg = Application.Range(xDicStr)
xRg.Copy
Range(xDic.Keys(I)).PasteSpecial xlPasteFormats
Else
Range(xDic.Keys(I)).Interior.Color = xlNone
End If
Next
Set xDic = Nothing
End If
Application.ScreenUpdating = True
Application.CutCopyMode = True
End Sub
3. Luego haz clic en Insertar > Módulo, y copia el siguiente código VBA 2 en la ventana del Módulo.
Código VBA 2: Vlookup y devolver valor con formato
Public xDic As New Dictionary
'Update by Extendoffice 20211203
Function LookupKeepFormat(ByRef FndValue, ByRef LookupRng As Range, ByRef xCol As Long)
Dim xFindCell As Range
On Error Resume Next
Application.ScreenUpdating = False
Set xFindCell = LookupRng.Find(FndValue, , xlValues, xlWhole)
If xFindCell Is Nothing Then
LookupKeepFormat = " "
xDic.Add Application.Caller.Address, " "
Else
LookupKeepFormat = xFindCell.Offset(0, xCol - 1).Value
xDic.Add Application.Caller.Address, xFindCell.Offset(0, xCol - 1).Address(External:=True)
End If
Application.ScreenUpdating = True
End Function
4. Haz clic en Herramientas > Referencias. Luego marca la casilla Microsoft Script Runtime en el cuadro de diálogo Referencias – VBAProject. Ver captura de pantalla:
5. Presiona las teclas Alt + Q para salir de la ventana de Microsoft Visual Basic para Aplicaciones.
6. Selecciona una celda en blanco adyacente al valor de búsqueda, y luego ingresa la fórmula =LookupKeepFormat(E2,$A$1:$C$8,3) en la Barra de fórmulas, y luego presiona la tecla Intro.
Nota: En la fórmula, E2 contiene el valor que deseas buscar, $A$1:$C$8 es el rango de la tabla, y el número 3 significa que el valor correspondiente que deseas devolver se encuentra en la tercera columna de la tabla. Cambia estos valores según sea necesario.
7. Mantén seleccionada la primera celda de resultado, y luego arrastra el controlador de relleno hacia abajo para obtener todos los resultados junto con su formato como se muestra en la siguiente captura de pantalla.

Descubre la Magia de Excel con Kutools AI
- Ejecución Inteligente: Realiza operaciones en celdas, analiza datos y crea gráficos, todo impulsado por comandos simples.
- Fórmulas Personalizadas: Genera fórmulas adaptadas para optimizar tus flujos de trabajo.
- Codificación VBA: Escribe e implementa código VBA sin esfuerzo.
- Interpretación de Fórmulas: Comprende fórmulas complejas con facilidad.
- Traducción de Texto: Supera las barreras del idioma dentro de tus hojas de cálculo.
Artículos relacionados:
- ¿Cómo buscar con Vlookup y devolver el color de fondo junto con el valor buscado en Excel?
- ¿Cómo hacer una búsqueda con Vlookup y devolver el formato de fecha en lugar de un número en Excel?
- ¿Cómo usar Vlookup y sumar en Excel?
- ¿Cómo hacer una búsqueda con Vlookup y devolver el valor en la celda adyacente o siguiente en Excel?
- ¿Cómo hacer una búsqueda con Vlookup y devolver verdadero o falso / sí o no en Excel?
Las mejores herramientas de productividad para Office
Potencia tus habilidades en Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...
Office Tab lleva la interfaz de pestañas a Office y facilita mucho tu trabajo
- Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abre y crea varios documentos en nuevas pestañas de la misma ventana, en lugar de nuevas ventanas.
- ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!