Hallo Riswan,
habe mal eine benutzerdefinierte Funktion erstellt die tut was du möchtest.
Einen ZellenText nach einer Reihe von Begriffen zu durchsuchen und wenn ein Solcher gefunden wird wir der ausgegeben.
der Bereich der die Suchbegriffe enhält muss ein Spaltenberech sein und als Text angegeben werden
z.B. so
=EXTRACTIF(B3;"N2:N23")
Code: Alles auswählen
FUNCTION EXTRACTIF(LongText, Search as string)
'diese Funktion ermittelt ob ein Begriff aus dem Bereich Search im String LongText enthalten ist
oSheet = Thiscomponent.CurrentController.ActiveSheet
sRange = oSheet.GetCellRangeByName(Search)
iScol = sRange.GetRangeAddress.StartColumn
iSrow = sRange.GetRangeAddress.StartRow
for i=0 to sRange.rows.count -1
if inStr(LongText,oSheet.GetCellByPosition(iScol,iSrow+i).string) > 0 then
EXTRACTIF = oSheet.GetCellByPosition(iScol,iSrow+i).string
exit function
end if
next
EXTRACTIF = ""
End FUNCTION
hier eine beiSpieldatei
hilf dir das?
Edit: . . . . .
damit die Beispieldatei sofort funktioniert hatte ich die Funktion in der Datei gespeichert,
was aber beim öffnen der Datei unter AOO genau das Gegeteil bewirkte,
nämlich für jede Formel die diese Funktion anwendet eine Fehlermeldung.
siehe
viewtopic.php?f=18&t=65983#p256899
Da ich die Funktion ja nur für die Beispieldatei in der Datei abgelegt hatte
und ansonsten Funktionen in die
Makro Bibliothek Standard/Funktionen gehören
habe ich Stephans Lösungsvorschlag auf die Schnelle umgesetzt.
(es scheint ja auch nur AOO zu betreffen, lt. Karolus tut es in LO ohne Mecker)
hoffe jetzt macht es mehr Spaß die beiSpieldatei zu öffnen
clag