Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
27.02.2009 11:32:42 |
Mark Dangel |
|
|
|
28.02.2009 08:59:16 |
Holger |
|
|
|
02.03.2009 08:12:57 |
Mark |
|
|
Aw:Aw:Aw:VBA - Vergleichen und löschen |
02.03.2009 09:37:21 |
Holger |
|
|
Von:
Holger |
Datum:
02.03.2009 09:37:21 |
Views:
1336 |
Rating:
|
Antwort:
|
Thema:
Aw:Aw:Aw:VBA - Vergleichen und löschen |
Hallo Mark,
ich gehe davon aus, dass wenigstens die Reihenfolge der zu vergleichenden Spalten auf beiden Blättern gleich ist. Die Werte zur Organisation deiner Tabellenblätter musst du noch eintragen und ebenso größer und kleiner durch die entsprechenden Zeichen ersetzen (die Form-SW verträgt diese Zeichen oft nicht).
Sub Vergleichen()
a = ... 'Name des Tabellenblattes, das die Ausgangsdaten enthält
b = ... 'Name des Tabellenblattes, auf dem gesucht wird
sa = ... 'erste Spalte zum Vergleichen auf Tabellenblatt Tabelle1 (Hauptreferenz)
sb = ... 'erste Spalte zum Vergleichen auf Tabellenblatt Tabelle2
ah = ... 'letzte Spalte zum Vergleichen auf Tabellenblatt Tabelle1
az = ... 'erste Zeile zum Vergleichen auf Tabellenblatt Tabelle1
bz = ... 'erste Zeile zum Vergleichen auf Tabellenblatt Tabelle2
sheets(a).activate
lza = Cells(Rows.Count, sa).End(xlUp).Row
lzb = sheets(b).Cells(Rows.Count, sb).End(xlUp).Row
for i = az to lza
for j = bz to lzb
If Cells(i, sa) = sheets(b).Cells(j, sb) Then
c = False
For k = 1 To ah - sa + 1
If cells(i, sa + k) kleiner größer sheets(b).Cells(j, sb + k) Then c = true: Exit for
next k
If c = false Then
Range(Cells(i, sa), Cells(i, ah)).Interior.ColorIndex = 3
Range(Sheets(b).Cells(j, sb), Sheets(b).Cells(j, sb + ah - sa)).Interior.ColorIndex = 3
End If
End If
next j
next i
End Sub
Gruß
Holger
Mark schrieb am 02.03.2009 08:12:57:
Hi Holger,
Sorry da war ich wirklich unpräzise. Es handelt sich un 2 Tabellenblätter.
Es handelt sich bei beiden Tabellenblättern um Datenbankexporte und die Elemente sind immer Spaltenweise geordnet.
Bei weiteren Fragen stehe ich natürlich gern zur Verfügung.
Gruß
Mark
Holger schrieb am 28.02.2009 08:59:16:
Hallo Mark Dangel,
handelt es sich wirklich um 2 Arbeitsmappen oder um 2 Tabellenblätter einer Arbeitsmappe? Auch wenn es nicht 2 Arbeitsmappen sind, stellt sich die Frage, ob sich die zu vergleichenden Elemente irgendwo auf irgendeinem Tabellenblatt befinden, oder ob eine gewisse Ordnung der Daten vorliegt. Auch ohne diese Ordnung lässt sich natürlich eine VBA-Lösung auch für die Verteilung auf mehrere Arbeitsmappen finden, sie ist bloß viel komplizierter und wird in der Ausführung länger dauern.
Vielleicht gibst du noch einige weitere Details an.
Gruß
Holger
Mark Dangel schrieb am 27.02.2009 11:32:42:
Hallo,
ich bin absoluter VBA-Neuling, bin mir aber zu 1000% sicher das dies machbar ist. Ich habe 2 Arbeitsmappen welche Namen Nachname Str. PLZ etc. enthalten.
Jetzt soll ein Makro ablaufen welches checkt ob der Name Str. PLZ auch in der anderen Arbeitsmappe vorhanden ist und falls ja rot makieren.
Ich hoffe es kann mir jemand weiterhelfen! Danke schon im voraus! |
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
|
27.02.2009 11:32:42 |
Mark Dangel |
|
|
|
28.02.2009 08:59:16 |
Holger |
|
|
|
02.03.2009 08:12:57 |
Mark |
|
|
Aw:Aw:Aw:VBA - Vergleichen und löschen |
02.03.2009 09:37:21 |
Holger |
|
|