Zellen vergleichen und Bereiche verschieben in Excel
Schritt-für-Schritt-Anleitung
Um Zellen in Excel zu vergleichen und Bereiche zu verschieben, kannst Du folgendes VBA-Skript verwenden. Es vergleicht die Werte in Spalte A von zwei Tabellen und verschiebt den gesamten Bereich (A:C) in Tabelle 2 um eine Zeile nach unten, wenn die Werte unterschiedlich sind.
- Öffne Excel und drücke
ALT
+ F11
, um den VBA-Editor zu öffnen.
- Klicke auf
Einfügen
und wähle Modul
, um ein neues Modul zu erstellen.
- Füge den folgenden Code ein:
Sub Übereinstimmungen_finden()
Dim Letzte_Zeile As Long, Wiederholungen As Long
Dim Suchbegriff As Range, Addresse As String, Mindestens_ein_Wert As Long
Application.ScreenUpdating = False
Letzte_Zeile = Range("A65536").End(xlUp).Row
For Wiederholungen = 2 To Letzte_Zeile
Mindestens_ein_Wert = 0
With Worksheets(1).Range(Cells(1, 1), Cells(Letzte_Zeile, 1))
Set Suchbegriff = .Find(What:=Cells(Wiederholungen, 1), LookIn:=xlValues)
If Not Suchbegriff Is Nothing Then
Addresse = Suchbegriff.Address
Do
Mindestens_ein_Wert = Mindestens_ein_Wert + 1
If Mindestens_ein_Wert > 1 Then
Suchbegriff.Rows.ClearContents
End If
Set Suchbegriff = .FindNext(Suchbegriff)
Loop While Not Suchbegriff Is Nothing And Suchbegriff.Address <> Addresse
End If
End With
Next
Range(Cells(2, 1), Cells(Letzte_Zeile, 1)).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
- Schließe den VBA-Editor und kehre zu Excel zurück.
- Drücke
ALT
+ F8
, wähle das Makro Übereinstimmungen_finden
und klicke auf Ausführen
.
Nun werden die Zellen in Tabelle 1 mit den Zellen in Tabelle 2 verglichen. Wenn die Werte unterschiedlich sind, wird der gesamte Bereich nach unten verschoben.
Häufige Fehler und Lösungen
Alternative Methoden
Eine einfachere Möglichkeit, Zellen zu vergleichen, besteht darin, Excel-Formeln zu verwenden. Hier sind zwei Optionen:
-
Verwenden der WENN
-Funktion:
- In einer neuen Spalte kannst Du mit
=WENN(A2=B2; "Identisch"; "Unterschiedlich")
die Zellen vergleichen.
-
Bedingte Formatierung:
- Markiere die Zellen in beiden Tabellen und gehe zu
Start
-> Bedingte Formatierung
-> Neue Regel
. Wähle „Formel zur Ermittlung der zu formatierenden Zellen verwenden“ und gebe eine Formel wie =A1<>B1
ein.
Praktische Beispiele
Stell Dir vor, Du hast zwei Tabellenblätter: Tabelle1
und Tabelle2
. In Tabelle1
befinden sich PLZ in Spalte A, und Du möchtest diese mit den PLZ in Tabelle2
vergleichen. Mit dem oben genannten VBA-Code kannst Du schnell feststellen, welche PLZ nicht übereinstimmen und die entsprechenden Bereiche verschieben.
Tipps für Profis
- Automatisierung: Du kannst das Makro so anpassen, dass es automatisch beim Öffnen der Datei ausgeführt wird. Füge dazu den Code in das
Workbook_Open
-Ereignis ein.
- Performance-Optimierung: Verwende
Application.Calculation = xlCalculationManual
, um die Berechnungen während des Makro-Laufs zu deaktivieren und die Ausführung zu beschleunigen.
FAQ: Häufige Fragen
1. Frage
Wie kann ich mehrere Zellen gleichzeitig vergleichen?
Antwort: Du kannst den oben genannten VBA-Code anpassen, um mehrere Spalten zu vergleichen, indem Du die Schleife erweiterst.
2. Frage
Funktioniert dieser Ansatz in Google Docs?
Antwort: Nein, dieser VBA-Code ist spezifisch für Excel. In Google Docs müsstest Du die Funktionalitäten von Google Apps Script nutzen.