Zellen vergleich

Mitglied: DFMSBG

DFMSBG (Level 1) - Jetzt verbinden

05.07.2020 um 19:32 Uhr, 584 Aufrufe, 2 Kommentare

Guten Abend Community,

Ich habe ein Anliegen.

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.

Ich habe unten ein Beispiel wie Ich es Meine.
Ich habe auch durch die Hilfe eines Freundes bereits einen Code.

Das funktioniert soweit auch.

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

Habt Ihr da vielleicht eine Idee ?


Danke für eure Hilfe.

Liebe Grüße
MSBG
screenshot_7 - Klicke auf das Bild, um es zu vergrößern
Mitglied: NordicMike
06.07.2020 um 11:45 Uhr
Für solche Zwecke ist der instr Befehl nicht geeignet.

https://www.w3schools.com/asp/func_instr.asp

Kurz: Es wird ein String in einem String durchsucht. Du wertest das Ergebnis aus. Wenn das Ergebnis 0 ist, kommt String 2 nicht in String 1 vor. Wenn das Ergebnis 1 ist, kommt String 2 gleich am Anfang von String 1 vor. Wenn das Ergebnis 2 oder höher ist, kommt String 2 irgendwo in der Mitte von String 1 vor. String 2 muss also absolut übereinstimmend vorkommen und lässt keine Entscheidung zu wie Bindestriche oder andere Zeichen darin zu behandeln sind.

Du könntest nur eines machen, dass du die zwei zu vergleichenden Strings schon vorher von allen Bindestrichen und anderen Zeichen entledigst und dann erst zum instr schickst.

Ist jedoch der Text im String 2 länger, als in String 1, wird das Eregebnis immer 0 sein. Ein längerer String kann ja nicht in einem kürzeren String enthalten sein. Wenn du es auf die Spitze treiben willst, machst du noch einen zweiten Befehl und drehst die Suche um, also instr(1,string 2,string1).
Bitte warten ..
Mitglied: 144705
144705 (Level 1)
06.07.2020, aktualisiert um 15:01 Uhr
Wenn diese 2 Zellen, nur einen geringen Unterschied aufweisen, soll mir das angezeigt werden oder anders rum.
Das Vergleichen von Strings auf Ähnlichkeit nennt man Levenshtein-Distanz und die lässt sich sogar "exakt" ermitteln indem man die nötigen Einfüge- und Löschoperationen zum erreichen des Zielwerts zählt, hier dazu in VBA gefunden:
https://administrator.de/forum/werte-vergleichen-nicht-100-prozent-31816 ...
Kann man ja leicht in die Schleife über alle Werte einbauen.
Bitte warten ..
Heiß diskutierte Inhalte
Wünsch Dir was
Das ist ja nicht auszuhalten, dass ich für jeden googlen soll
NordicMikeVor 18 StundenAllgemeinWünsch Dir was22 Kommentare

Ich beantrage, dass bei jeder Beitragserstellung eine Checkbox angeklickt werden muss, mit dem Text: Ja, ich habe bereits danach gegoogelt. Ansonsten soll der "Senden" ...

Rechtliche Fragen
Adobe Flash erneut aktivieren, IT-Sicherheit + Datenschutz
anteNopeVor 1 TagFrageRechtliche Fragen14 Kommentare

Hallo zusammen, ich weiß es ist noch nicht Freitag aber mir ist hier gerade die Kinnlade bis in den Keller gefallen. Opel (ja der ...

Windows 10
Wie kann ich mehrere PCs gleich aufsetzten (mit User)
dressaVor 1 TagFrageWindows 1010 Kommentare

Hallo miteinander. Wie kann ich mehrere PCs (über 200) gleich aufsetzten. Ich habe etwa 4 Modele die sich nur von der Baugeneration unterscheiden. Also ...

Flatrates
Mobilfunktarife für die Firma (günstig)
gelöst ingo1988Vor 1 TagFrageFlatrates13 Kommentare

Hallo, kann mir jemand weiterhelfen im Bezug auf Mobilfunktarife für Unternehmen? Ich suche nämlich günstige Angebote im Telekom oder Vodafone Netz, ähnlich wie Lidl ...

Microsoft
Wie verteilt Ihr Software im AD auf die Clients? GPO?
Der-PhilVor 1 TagFrageMicrosoft14 Kommentare

Hallo! Die Kernfrage steht eigentlich schon im Titel: Wie verteilt ihr Software und haltet sie aktuell auf den Clients? Bislang mache ich das alles ...

Hardware
Homelab - Gebrauchte Server Hardware?
gelöst kernl33Vor 20 StundenFrageHardware16 Kommentare

Hallo zusammen, ich plane mir für mein Homelab einen 19 Zoll Server (2-4HE) anzulegen, es soll ein Hypervisor mit diversen VMs laufen. Hier zu ...

Cloud-Dienste
Server über zwei WAN Leitungen mit Load Balancing verfügbar machen
tobitobsnVor 1 TagFrageCloud-Dienste13 Kommentare

Moin zusammen, ich plane, einen Server im WAN über zwei Leitungen (Kabel und DSL) zwecks Ausfallsicherheit und Load Balancing verfügbar zu machen. Es sind ...

Festplatten, SSD, Raid
SATA Treiber für HP
ben1300Vor 13 StundenFrageFestplatten, SSD, Raid15 Kommentare

Hallo zusammen, ich habe einen PC von HP (Seriennummer: CZC3475D5D) Wollte hier Windows 7 Prof. installieren - es fehlt der SATA Treiber Leider kann ...