MS EXCEL 2007: Formel oder VBA?

Guten Tag

Wenn die Zeichenkette „SW“ in den Zellen A1:E22 mehr als x mal vorkommt, soll in Zelle A37 „!!!“ erscheinen.

Ich finde keine passende(n) Funktion(en) um dies mit einer Formel bewerkstelligen zu können. Kann mir jemand weiterhelfen?

Klar, mit VBA geht das bestimmt. Das möchte ich aber, wenn möglich, vermeiden.

Dank und Gruss

Olli

BSP: MS EXCEL 2007: Formel oder VBA?
Formel in A37:

' Wenn in A1 "SW" steht ist der Rückgabewert "!!!"
=WENN(A1="SW", "!!!", "") 
 
' Wie in A1:E22 "SW" x mal vorkommt ist der Rückgabewert "!!!"
=WENN( ???(A1:E22,"SW",x), "!!!", "")

Durch welche Funktion oder Funktions-Kombination muss ich ??? ersetzen, damit ich das gewünschte Resultat erhalte?

Dank und Gruss

Olli

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Oli
so sollte es funktionieren
=WENN(ZÄHLENWENN($A$1:blush:E$22;„SW“)>10;"!!!";„ok“)
ich habe jetzt die Anzahl 10 eingetragen.
Natürlich kann dort auch ein Zellenbezug stehen.

Gruß Holger

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Moin,

Wenn die Zeichenkette „SW“ in den Zellen A1:E22 mehr als x mal
vorkommt, soll in Zelle A37 „!!!“ erscheinen.

das kommt nun drauf an, ob diese „Zeichenkette“ auch innerhalb anderer Strings vorkommt, oder ob diese „Zeichenkette“ nur eine ganze Zelle sein darf…

für den Fall, dass der Zellinhalt gemeint ist, der abgefragt werden soll („st“ wird gewertet, aber „Ast“ nicht), dann kann man ein einfaches =WENN(ZÄHLENWENN(Bereich;„st“)>x;"!!!";"") verwenden.

Ist das nicht der Fall, dann schlage ich folgende Variante vor:
Verkette alle Zellen miteinander, die durchsucht werden sollen
(=VERKETTEN(A1;A2;A3…)
Im Ergebnis tauschst Du den gesuchten String aus - durch nichts ("")
WECHSELN(Sting;„st“;"")
Nun ermittelst Du die Stringlänge vor und nach dem austauschen des gesuchten Wortes.
Und im Anschluss dividierst Du die Differenz durch die länge des gesuchten Begriffs…
Die Formel wird so recht lang - aber es geht :wink:

Grüße
Munich

Warum so umständlich?
Da verwendet man Platzhalter, dann geht das auch mit ZÄHLENWENN()
http://www.online-excel.de/excel/singsel.php?f=73
Beispiel
=WENN(ZÄHLENWENN($A$1:blush:E$22;"*SW*")>10;"!!!";„ok“)

gruß Holger

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo ECHO [ON]

Genau das habe ich gesucht.

Vielen Dank!

Olli