Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1688to1692
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Datenvergleich

Datenvergleich
03.05.2019 09:55:53
Andy
Hallo alles zusammen,
Ich würde gerne ein Makro haben für folgendes:
Im Sheet "Vergleichsliste" Spalte "D" sind meine Grunddaten. Also alle Inhalte der Zellen D2 bis Ende der Liste (Ende ist Variabel und es können auch mal ein oder 2 Leerzeilen dazwischen sein) sollen einzeln sich angeschaut werden. Nehmen wir jetzt mal eine Zelle aus "Vergleich" "D2". In "D2" steht "ABC123", dieser Inhalt soll mit dem kompletten Block aus "Daten" "D2:Ende" (auch hier können mal Leerzeilen sein) verglichen werden. Wenn nun der Inhalt "ABC123" in Zelle "D155" ist, soll sich dann die Zelle "BD155" angeschaut werden in "Daten". Ist diese Leer soll anschließend in "Vergleich" "E2" "keine Daten" geschrieben werden. Falls sie nicht leer ist soll in "Vergleich" "E2" "Daten vorhanden" geschrieben werden!
Das Ganze soll aber mit einem Makro passieren, da es in ein bestehendes Makro eingebaut werden soll.
Es wäre auch schön wenn Erklärungen dabei sind, damit ich es nachvollziehen kann und auch etwas draus lernen kann.

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datenvergleich
03.05.2019 11:23:21
mmat
Hallo Andy,
ungefähr so ?
Sub suchen()
Dim r As Long, lr As Long, fr As Long, sr As Range, rr As Range, s As String
lr = Cells(ActiveSheet.Rows.Count, 4).End(xlUp).Row 'letzte Zeile
For r = 2 To lr 'Schleife über alle Zeilen
s = Cells(r, 4) 'Suchbegriff lesen
Set sr = Range(Cells(r + 1, 4), Cells(lr, 4)) 'Suchbereich darunter festlegen
Set rr = sr.Find(s) 'suchen
If rr Is Nothing Then
Cells(r, 5) = s + " gibt's 'net (mehr)" 'Suchbegriff nicht gefunden
Else
fr = rr.Rows(1) 'Fundzeile
If Cells(fr, 56) = "" Then 'Was steht in spalte BD
Cells(r, 5) = "Keine Daten"
Else
Cells(r, 5) = "Daten vorhanden"
End If
End If
Next
End Sub
vg, MM
Anzeige
AW: Datenvergleich
03.05.2019 11:40:24
Werner
Hallo Andy,
und jetzt zu diesem Thema hier jetzt auch noch mal:
Public Sub Vergleich()
Dim loLetzte As Long
With Worksheets("Vergleichsliste")
'Ermitteln der letzten belegten Zeile im Blatt "Vergleichsliste" Spalte D
loLetzte = .Cells(.Rows.Count, "D").End(xlUp).Row
'SVERWEIS-Formel Blatt "Vergleichsliste" Bereich von E2:E letzte belegte Zeile schreiben
.Range(.Cells(2, "E"), .Cells(loLetzte, "E")).FormulaLocal = _
"=WENNFEHLER(WENN(SVERWEIS($D2;Daten!$D:$BD;53;FALSCH)=0;""Leere Zelle"";" _
& """Daten vorhanden"");"""")"
'Formel in Spalte E durch den jeweiligen Wert ersetzen
.Range(.Cells(2, "E"), .Cells(loLetzte, "E")).Value = _
.Range(.Cells(2, "E"), .Cells(loLetzte, "E")).Value
End With
End Sub
Gruß Werner
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige