Date: prev next · Thread: first prev next last
2019 Archives by date, by thread · List index


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: users+unsubscribe@de.libreoffice.org
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

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.