Hallo zusammen,

ich möchte euch von einer neuen Calc Funktion berichten, die es leider noch 
nicht offiziell gibt, die es aber meiner Meinung nach braucht. Daher habe ich 
sie gemacht! 
Ich habe mich mir folgendem Problem auseinandergesetzt: Es gibt in Calc die 
Funktion Verbinden. Aber ein entgegengesetztes Trennen gab es bislang nicht. 
Ich hatte folgendes Problem. Eine verbundene Zeichenkette (mit Semikolon oder 
Komma getrennt) lag vor und musste wieder auseinander genommen werden. Dafür 
gab es bislang zwei Möglichkeiten. Zum einen die Menü-Option bei [Daten] „Text 
in Spalten“. Oder eine sehr umständliche Formel die ich im Netzt irgendwo 
gefunden habe. Geht mit Wechseln und Suchen und so. 
Ich habe jetzt eine relativ einfache Funktion geschrieben, die es ermöglicht 
eine Zeichenkette wieder aufzuTRENNEN.
Ich habe sie TRENNEN genannt und wenn ihr möchtet stelle ich sie euch vor:
So sieht ein Beispiel aus: =TRENNEN(„A; B; 1; X; ?; k; 345“; “; „; 7)           
= 345
Die Funktion brauch zunächst mal den Textstring der durch Semikolons, 
Leerzeichen, Kommas, o.ä. getrennt ist. In dem Beispiel habe ich es direkt in 
die Formel geschrieben. Es kann aber auch ein Bezug zu einer Zelle verwendet 
werden. Dann muss bekannt gemacht werden, wie die Trennung der Daten erfolgt 
ist. Also ein Semikolon oder ein Semikolon mit anschließendem Leerzeichen oder 
sonstwie. Und dann möchte die Funktion noch wissen, den wievielten Eintrag man 
herausfiltern möchte. Also in dem Beispiel oben den 7ten. Normaler Weise löst 
man dies auf mit Zeile() oder Spalte(), um alle Einträge aus einem String 
nebeneinander oder unter einander aufzulisten. Wenn ihr einen Teil rausfiltern 
möchtet, den es gar nicht gibt, dann wird kein Fehler ausgegeben sondern eine 
leere Zeichenkette. Den Fehler würde man ja doch nur mit Wennfehler wieder 
unkenntlich machen.
Ihr könnt die Funktion ganz einfach selbst verwenden, wenn ihr den folgenden 
Code im Basic Editor wie folgt abspeichert. Ihr müsst wie folgt vorgehen: 
[Extras] [Makros] [Makros verwalten] [LibreOffice Basic] Dann links [Meine 
Makros] [Standard] [Module1] wählen und [Bearbeiten] klicken.
Dort dann folgenden Code eingeben und [Speichern] klicken.

Function TRENNEN(a, b, c)
On Error GoTo Errorhandler
i = UBound(Split(a, b)) + 1
If c > i Then TRENNEN = ""
TRENNEN = Split(a, b)(c-1)
Errorhandler: 
End Function

Die Funktion steht euch anschließend in allen euren Calc Arbeitsmappen auf 
eurem Rechner zu Verfügung. 

Viel Spaß!

Jürgen Kirsten

Für Fragen oder Anregungen stehe ich gerne zu Verfügung.

-- 
Liste abmelden mit E-Mail an: [email protected]
Probleme? 
https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy

Antwort per Email an