Wie kopiere ich die Quellformatierung der Suchzelle, wenn ich Vlookup in Excel verwende?
In den vorherigen Artikeln haben wir darüber gesprochen, die Hintergrundfarbe bei Vlookup-Werten in Excel beizubehalten. Hier in diesem Artikel stellen wir eine Methode zum Kopieren der gesamten Zellenformatierung der resultierenden Zelle vor, wenn Sie Vlookup in Excel ausführen. Bitte gehen Sie wie folgt vor.
Kopieren Sie die Quellformatierung, wenn Sie Vlookup in Excel mit einer benutzerdefinierten Funktion verwenden
Angenommen, Sie haben eine Tabelle wie im folgenden Screenshot gezeigt. Jetzt müssen Sie überprüfen, ob sich ein bestimmter Wert (in Spalte E) in Spalte A befindet, und den entsprechenden Wert mit der Formatierung in Spalte C zurückgeben. Gehen Sie dazu wie folgt vor.
1. Klicken Sie im Arbeitsblatt mit dem Wert, den Sie anzeigen möchten, mit der rechten Maustaste auf die Registerkarte Blatt und wählen Sie Code anzeigen aus dem Kontextmenü. Siehe Screenshot:
2. In der Öffnung Microsoft Visual Basic für Applikationen Fenster, bitte kopieren Sie den folgenden VBA-Code in das Code-Fenster.
VBA-Code 1: Vlookup und Rückgabewert mit Formatierung
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. Dann klick Insert > Modul, und kopieren Sie den folgenden VBA-Code 2 in das Modulfenster.
VBA-Code 2: Vlookup und Rückgabewert mit Formatierung
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 Klicken Tools > Referenzen. Dann überprüfen Sie die Microsoft Script-Laufzeit Box in der Referenzen - VBAProject Dialogbox. Siehe Screenshot:
5. Drücken Sie die Taste Andere + Q Tasten zum Verlassen des Microsoft Visual Basic für Applikationen Fenster.
6. Wählen Sie eine leere Zelle neben dem Nachschlagewert aus und geben Sie dann die Formel ein =LookupKeepFormat(E2,$A$1:$C$8,3) in die Formel-Bar, und drücken Sie dann die Taste Weiter Key.
Hinweis: In der Formel E2 enthält den Wert, den Sie suchen, $ A $ 1: $ C $ 8 ist der Tabellenbereich und die Nummer 3 bedeutet, dass der entsprechende Wert, den Sie zurückgeben, sich in der dritten Spalte der Tabelle befindet. Bitte ändern Sie sie nach Bedarf.
7. Wählen Sie weiterhin die erste Ergebniszelle aus und ziehen Sie den Füllgriff nach unten, um alle Ergebnisse zusammen mit ihrer Formatierung zu erhalten, wie im folgenden Screenshot gezeigt.
In Verbindung stehende Artikel:
- Wie kann ich die Hintergrundfarbe zusammen mit dem Suchwert in Excel anzeigen und zurückgeben?
- Wie kann ich das Datumsformat anstelle der Zahl in Excel anzeigen und zurückgeben?
- Wie verwende ich vlookup und sum in Excel?
- Wie kann ich den Rückgabewert in einer benachbarten oder nächsten Zelle in Excel anzeigen?
- Wie kann ich einen Wert suchen und in Excel true oder false / yes oder no zurückgeben?
Die besten Tools für die Office-Produktivität
Kutools for Excel Löst die meisten Ihrer Probleme und steigert Ihre Produktivität um 80 %
- Wiederverwendung: Schnell einfügen komplexe Formeln, Diagramme und alles, was du vorher benutzt hast; Zellen verschlüsseln mit Passwort; Mailingliste erstellen und E-Mails senden ...
- Super Formelriegel (leicht mehrere Textzeilen und Formeln bearbeiten); Layout lesen (leichtes Lesen und Bearbeiten einer großen Anzahl von Zellen); In gefilterten Bereich einfügen...
- Zellen / Zeilen / Spalten zusammenführen ohne Daten zu verlieren; Inhalt geteilter Zellen; Kombinieren Sie doppelte Zeilen / Spalten... doppelte Zellen verhindern; Bereiche vergleichen...
- Wählen Sie Duplizieren oder Eindeutig Reihen; Wählen Sie Leere Zeilen (alle Zellen sind leer); Super Find und Fuzzy Find in vielen Arbeitsmappen; Zufällige Auswahl ...
- Exakte Kopie Mehrere Zellen ohne Änderung der Formelreferenz; Referenzen automatisch erstellen zu mehreren Blättern; Aufzählungszeichen einfügen, Kontrollkästchen und mehr ...
- Text extrahieren, Text hinzufügen, Nach Position entfernen, Leerzeichen entfernen;; Paging-Zwischensummen erstellen und drucken; Inhalt und Kommentare zwischen Zellen konvertieren...
- Superfilter (Speichern und Anwenden von Filterschemata auf andere Blätter); Erweiterte Sortierung nach Monat / Woche / Tag, Häufigkeit und mehr; Spezialfilter fett, kursiv ...
- Kombinieren Sie Arbeitsmappen und Arbeitsblätter;; Tabellen basierend auf Schlüsselspalten zusammenführen; Daten in mehrere Blätter aufteilen; Batch-Konvertierung von xls, xlsx und PDF...
- Mehr als 300 leistungsstarke Funktionen. Unterstützt Office / Excel 2007-2021 und 365. Unterstützt alle Sprachen. Einfache Bereitstellung in Ihrem Unternehmen oder Ihrer Organisation. 30-tägige kostenlose Testversion mit allen Funktionen. 60 Tage Geld-zurück-Garantie.

Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich
- Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
- Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!






























