Zelle mit Text nach Wörterliste durchsuchen

07/05/2014 - 11:52 von beckmann.max | Report spam
Hallo,

ich arbeite gerade an einer Tabelle in der es notwendig ist, eine Textzeile nach verschiedenen Wörtern aus einer anderen Spalte zu durchsuchen.

Ich nutze dabei diesen Befehl.
{=WENN(SPALTE(E2)>SUMME(ZÄHLENWENN($E2;WENN(DB!$D$2:$D$500="";"ÿ";"*"&DB!$D$2:$D$500&"*"))); "";INDEX(DB!$D:$D;KKLEINSTE(WENN(WECHSELN($E2;DB!$D$2:$D$500;)<>$E2;ZEILE($2:$500); 9^9); SPALTE(E2))))}

{} nicht mit kopieren sondern Matrixbefehl mit STRG+Shift+Enter auslösen

E2 ist hierbei die zu durchsuchende Zelle
DB!D2:D500 ist die Spalte nach deren Worten im Text gesucht werden soll


Ich habe mir die Formel nicht selbst ausgedacht, sondern von einer anderen Website kopiert.
Im Prinzip funktioniert das ganze schon ganz gut, nur das nicht alle Wörter gefunden werden, obwohl sie in der Liste enthalten sind. Wenn ich nachtràglich Wörter zu der Liste hinzufüge wird diese auch nicht aktualisiert.

Ich habe auch das Gefühl, dass bei làngeren Texten die Wörter weniger gefunden werden.

Die automatisch Aktualisierung der Formeln ist aktiviert, wenn ich Sachen hinzufüge ist er auch einen Moment damit beschàftigt, alles noch einmal "durchzurechnen" nur das neue Wörter dann trotzdem nicht gefunden werden.


Hat jemand evtl. eine Idee woran das liegen kann, das ich keine weiteren Wörter hinzufügen kann und er bei làngeren Texten es nicht hinbekommt die Wörter zu finden, obwohl sie von vornerein in der Spalte vorhanden waren?

Wenn jemand eine schönere(kürzere) Formel hat, nehme ich diese natürlich auch gerne. :-)


Grüße

P.S.
Ich habe da teilweise Wörter mit französischen Accents drin, kann man Excel sagen, das er auf Accents nicht achten soll?
 

Lesen sie die antworten

#1 Claus Busch
07/05/2014 - 13:49 | Warnen spam
Hallo Max,

Am Wed, 7 May 2014 02:52:59 -0700 (PDT) schrieb
:

ich arbeite gerade an einer Tabelle in der es notwendig ist, eine Textzeile nach verschiedenen Wörtern aus einer anderen Spalte zu durchsuchen.



mache es doch mit VBA. Folgender Code in einem Standardmodul zàhlt dir
ab F2 die übereinstimmenden Treffer auf:

Sub WoerterAufzaehlen()
Dim arrCheck As Variant, arrConst As Variant
Dim arrOut() As Variant
Dim i As Long, j As Long, n As Long

arrCheck = Sheets("DB").Range("D2:D500")
arrConst = Split(Range("E2"), " ")
For i = LBound(arrConst) To UBound(arrConst)
For j = LBound(arrCheck) To UBound(arrCheck)
If arrConst(i) = arrCheck(j, 1) Then
ReDim Preserve arrOut(n)
arrOut(n) = arrCheck(j, 1)
n = n + 1
Exit For
End If
Next
Next
Range("F2").Resize(rowsize:=UBound(arrOut) + 1) = _
Application.Transpose(arrOut)
End Sub


Mit freundlichen Grüßen
Claus
Vista Ultimate / Windows7
Office 2007 Ultimate / 2010 Professional

Ähnliche fragen