Hallo Norma alias Antonia,
wie auch immer du nun heißen magst, wozu brachst du das? Ist das eine Übungsaufgabe oder hat die einen gewissen Nutzen?
Sind deine Beispiele wirklich durchdacht? Nach deiner Beschreibung müsste mindestens das ie an Pos. 2 und 3 schwarz bleiben. Da die Position offenbar keine Rolle spielt, wären auch 2 s in Spalte D weiterhin schwarz, da links 3 s vorkommen. Gilt auch für e und weitere Buchstaben. Oder vergleichst du nur ganze Wörter? Dann wäre Beispiel 1 nicht umsetzbar, da "ein" ein anderes Wort als "kein" ist, somit müsste nicht nur das k sondern das ganze Wort rot sein.
Wobei, wenn ichs recht bedenke: Eine Möglichkeit, welche deine Beispiele abdeckt, sehe ich doch.
Idee: Mach erstmal alles Rot, Laufe mit einer Schleife Zeile für Zeile durch, Erstelle mit der Split-Funktion ein Wort-Array für die Zelle in Spalte A und eins für die Zelle in Spalte B, die der aktuellen Zeile entspricht. Gehe nun z.B. mit For Each Wort für Wort aus Spalte A durch und vergleiche mit Instr > 0 ob das Wort in der Zelle von Spalte B vorkommt. Das gleiche Machst du umgekehrt indem du die Wörter aus der aktuellen Zelle von Spalte B mit dem Text der Zelle in Spalte A vergleichst. Wenn ein Wort gefunden wird, machst du es schwarz. Die Startposition des Wortes liefert dir Instr. Die Endposition ist dann das nächste Leerzeichen -1 bzw. wenn keins mehr kommt (Instr = 0) dann ist Endposition die Länge des Wortes - das liefert die Len-Funktion.
Wenn ich mich nicht komplett irre, sollte das deinem Wunsch entsprechen oder zumindest sehr nahe kommen. Hab nur leider grad keine Zeit und Muse das für dich umzusetzen. Wenn du nicht weiter kommst, kannst du ja mal Google befragen. Dort gibt es genügend Beispiele zu diesen Funktionen.
Gruß Mr. K.
|