Hallo,
mit einem Makro will ich Strings vergleichen, aber es soll ein „nicht strenger“ Vergleich sein.
Beispiel:
Wert von Zelle A1: Käse
Wert von Zelle A2: Käsekuchen
Das Makro soll jetzt A1 und A2 vergleichen und zu dem Ergebnis kommen, dass eine Gleichheit vorliegt, weil „Käse“ im Wort „Käsekuchen“ vorkommt.
Für Antworten besten Dank im Voraus.
Grüße
Max
Hi,
hab nur Zeit für eine Kurzantwort…
Also, wenn er reicht, das ein Wort enthalten ist, dann sieh dir mal die Funktion instr() an.
Weil es nicht so streng sein soll, könntest du noch auf Unterschiede zwischen Groß-/Kleinschreibung verzichten: z. B. mit lcase().
Vieleicht musst du auch noch Sonderzeichen berücksichtigen: ae = ä
Das kannst du ggf. mit replace() hingekommen.
Grüße
powerblue
Oje, Max,
Stringvergleiche sind immer ein ganz heikles Thema. Wenn es wirklich „nur“ darauf hinaus läuft, einen Teilstring in einem String zu finden, könnte das so gehen:
Sub test1()
Dim ergebnis As Boolean
ergebnis = istGleich(Range("A1"), Range("A2"))
End Sub
Function istGleich(s1 As String, s2 As String) As Boolean
istGleich = (InStr(s1, s2) 0) Or (InStr(s2, s1) 0)
End Function
Gruß, Andreas
Hallo Andreas, Hallo power_blue,
vielen Dank für eure Antworten. Ihr habt mein VBA-Problem gelöst.
Beste Grüße
Max