Registriert seit: 23.05.2020
Version(en): 2013 / 2016
Guten Abend Community, Ich habe ein Anliegen, wo Ich nicht weiß, ob dies überhaupt möglich ist. Ich habe eine Tabelle (2000 Zeilen) Hier sollen in jeder Zeile, 2 Zellen miteinander verglichen werden. Wenn diese 2 Zellen, nur einen geringen Unterschied aufweisen, soll mir das angezeigt werden oder anders rum. Hier hab Ich mal ein Beispiel erstellt was Ich meine
vergleich.xlsx (Größe: 8,71 KB / Downloads: 8)
Gibt es eine Möglichkeit einen solchen Vergleich zu ziehen ? Danke für eure Hilfe. Liebe Grüße MSBG
Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
Ohne Dateiöffnen (da Text ausreichend). Alternativ:
C2: =A2=B2
C2: =IDENTISCH(A2;B2)
Anschließend nach C sortieren.
Registriert seit: 06.12.2015
Version(en): 2016
Hallo Denis, dieser Code kann deine Vorlage reproduzieren: Code: Sub Main for i = 1 to cells(rows.count, 1).end(xlup).row if instr(1, lcase(cells(i,1)), lcase(cells(i,2))) > 0 then cells(i,4) = "kleiner Unterschied" else cells(i,4) = "großer Unterschied" endif next i End Sub
mfg
Registriert seit: 23.05.2020
Version(en): 2013 / 2016
03.07.2020, 18:56
(Dieser Beitrag wurde zuletzt bearbeitet: 03.07.2020, 20:41 von WillWissen.
Bearbeitungsgrund: Antwort aus Zitat herausgenommen
)
(03.07.2020, 18:35)Fennek schrieb: Hallo Denis,
dieser Code kann deine Vorlage reproduzieren:
Code: Sub Main for i = 1 to cells(rows.count, 1).end(xlup).row if instr(1, lcase(cells(i,1)), lcase(cells(i,2))) > 0 then cells(i,4) = "kleiner Unterschied" else cells(i,4) = "großer Unterschied" endif next i End Sub
mfg Hallo Fennek, Sorry für das dumme anstellen, bin noch recht am Anfang Als was muss Ich "i" definieren, da Ich eine Fehlermeldung erhalte. Ich weißt nicht, ob dass bei meinem Text hervorgegangen ist, das sind aber nur Beispiele. Wie gesagt habe Ich über 2000 Zeilen, wo überall unterschiedliche Namen drin stehen. Aber Ich vermute, du hast mich verstanden :23:
Registriert seit: 06.12.2015
Version(en): 2016
Wenn ich dich richtig verstanden habe, gibt es 2 Alternativen:
- treu zum Lehrbuch: Dim i as long - ansonsten: lösche "Option explicit
Wichtiger sind die Kriterien:
"Kleiner Unterschied" bedeutet, dass der Name der Spalte B OHNE Berücksichtigung von Groß- / Kleinschreibung in Spalte A enthalten ist.
Registriert seit: 23.05.2020
Version(en): 2013 / 2016
03.07.2020, 20:00
(Dieser Beitrag wurde zuletzt bearbeitet: 03.07.2020, 20:00 von MSBG.)
(03.07.2020, 19:37)Fennek schrieb: Wenn ich dich richtig verstanden habe, gibt es 2 Alternativen:
- treu zum Lehrbuch: Dim i as long - ansonsten: lösche "Option explicit
Wichtiger sind die Kriterien:
"Kleiner Unterschied" bedeutet, dass der Name der Spalte B OHNE Berücksichtigung von Groß- / Kleinschreibung in Spalte A enthalten ist. Okay, soweit funktioniert es nicht schlecht. Aber bei Fällen wie: Der eine Name enthält Bindestriche = großer Fehler (sollte ein kleiner sein) oder Spalte A Gisela Maier Spalte B Gisela Maier Helmut Maier Hier ist auch ein großer Unterschied obwohl es ein kleiner sein sollte. oder hier Spalte A Artur Sofin Spalte B Timo Sofin müsste ein kleiner sein Auch bei Klammern kommt ein großer Fehler Kennst du dafür noch eine Möglichkeit ?
Registriert seit: 06.12.2015
Version(en): 2016
Sonderzeichen kann man vor dem Vergleich löschen. Zitat:Spalte A Gisela Maier Spalte B Gisela Maier Helmut Maier Hier ist auch ein großer Unterschied obwohl es ein kleiner sein sollte. oder hier Spalte A Artur Sofin Spalte B Timo Sofin müsste ein kleiner sein Mit dem gezeigten Code geht das nicht, da müßte vollkommen anderst geprüft werden.
Registriert seit: 23.05.2020
Version(en): 2013 / 2016
(03.07.2020, 20:05)Fennek schrieb: Sonderzeichen kann man vor dem Vergleich löschen.
Mit dem gezeigten Code geht das nicht, da müßte vollkommen anderst geprüft werden. Hättest du dafür eine Idee? Sind wie gesagt, über 2000 Zeilen. Wäre schön wenn das ganze über eine Funktion gehen würde.
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hallo MSBG,
bitte nicht unnötig vollzitieren (vor allem, wenn sich eh nur zwei User unterhalten). Zum Verständnis notwendige Zitate können auch einzeln herauskopiert werden.
Gruß Günter Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen. angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 06.12.2015
Version(en): 2016
Mit dem "." (Punkt) als sonderzeichen hat es nicht geklappt, aber sonst ... Code: Sub Main ll = "-() " ' Liste aller Sonderzeichen ll = lcase(ll)
for i = 1 to cells(rows.count, 1).end(xlup).row Tx = lcase(cells(i,1) & "#" & cells(i,2)) for l = 1 to len(ll) Tx = replace(Tx, mid(ll, l,1), "") next l Ty = split(Tx,"#") cells(i+10,1) = Ty(0) cells(i+10,2) = Ty(1) if instr(1, Ty(0), Ty(1)) > 0 then cells(i,4) = "kleiner Unterschied" else cells(i,4) = "großer Unterschied" endif next i End Sub
|