BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das LibreOffice Forum zu erhalten!

❤️ DANKE >><< DANKE ❤️

> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

CSV mit Autofilter öffnen

CALC ist die Tabellenkalkulation, die Sie immer wollten.
Antworten
Team14
Beiträge: 5
Registriert: Do 5. Okt 2017, 07:04

CSV mit Autofilter öffnen

Beitrag von Team14 » Do 5. Okt 2017, 10:54

Hallo Liebe Gemeinde,

ich wollte fragen, ob es mit LibreOffice irgendwie möglich ist, eine CSV-Datei vollautomatisch so zu öffnen, dass der Import-Dialog übersprungen wird, und die 1. Zeile einen Autofilter bekommt. Idealerweise auch noch die Darstellung der 1. Zeile (Header) einfrieren, damit sie immer sichtbar ist, auch wenn man sich die 1000ste Zeile grad anschauen möchte.

Lässt sich das irgendwie mittels Parameter beim Starten von Libreoffice machen, oder zur Not über ein Makro?

LG, Karl

Helmut_S
Beiträge: 692
Registriert: Di 9. Feb 2016, 19:27

Re: CSV mit Autofilter öffnen

Beitrag von Helmut_S » Sa 7. Okt 2017, 13:11

Hallo Team14, vieles kann man heutzutage automatisieren und das Meiste geht elektrisch, oder elektronisch, nur die Unzucht wird nach wie vor "getrieben" ;) - Spaß beiseite. Dein "Problem" konnte ich zumindest teilweise nachstellen, wenn auch nicht lösen.
Wie in der Hilfe zu Libreoffice (Taste F1 und Eingabe "Startparameter") nachzulesen ist, lässt sich das Programm auch aus der (Linux) Konsole oder (Windows) Kommandozeile starten und wenn du die Datei angibst, die dabei geladen werden soll, geschieht das auch - vollautomatisch!! - wie gewünscht.
Bei einer csv-Datei fordert dich der Eingabe-Dialog allerdings auf, eine Auswahl zu treffen. Falls die default-Einstellungen passen brauchst du nur auf die "ok" - Taste zu drücken und schon ist die csv-Datei geladen. Der Cursor steht normalerweise nun in der Zelle A1; mit einem weiteren Klick in der Standard-Smbolleiste auf "Autofilter" wird die 1.Zeile mit einem Autofilter versehen, wie von dir gewünscht! Um nun die erste Zeile zu fixieren bedarf es ohne Anpassung zweier Klicks - 1 auf "Zeile/Spalten fixieren" und 1 auf "Erste Zeile fixieren". also insgesamt 4 Klicks. Mit einer Anpassung der Standard-Symbolleiste kannst du dir den Befehl "Erste Zeile fixieren" auf eine Symbolleiste legen, dann sparst du dir 1 Klick. Also sind es bis zu deinem gewünschten Ergebnis 3 Klicks.
Wie weiters in der F1-Hilfe nachzulesen ist, kann man libreoffice auch mit einem Makro starten: {Datei} macro:///[Bibliothek.Modul.Makroname]
Öffnet die Datei und führt das angegebene Makro aus.
Hier muss ich leider passen, aber vielleicht findet sich ein komptetenterer User, der dir für deinen Wunsch ein Makro schreibt, oder dir dabei hilft.
Grüße Helmut
MX-Linux KDE + Linux-Mint Cinnamon

F3K Total
Beiträge: 2409
Registriert: So 10. Apr 2011, 10:10

Re: CSV mit Autofilter öffnen

Beitrag von F3K Total » Sa 7. Okt 2017, 15:25

Hi,
ja per Makro geht es z.B. so:

Code: Alles auswählen

Sub S_load_csv_Autofilter_and_Fix
    Dim Args(1) as New com.sun.star.beans.PropertyValue
    sURL = converttourl("C:\Users\<USER>\Desktop\DATEN.csv") '    <------ Dateipfad der zu ladenden Datei
    Args(0).Name = "FilterName"
    Args(0).Value ="Text - txt - csv (StarCalc)"
    Args(1).Name = "FilterOptions"
    Args(1).Value = "59,34,76,1,,0,true,true,true,false"
    odoc = StarDesktop.loadComponentFromURL(sURL,"_blank", 0, Args)
    oController = odoc.currentcontroller
    oFrame = oController.Frame
    dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
    dispatcher.executeDispatch(oFrame, ".uno:DataFilterAutoFilter", "", 0, Array())
    oController.freezeAtPosition(0,1) 
end sub
mit der angehängten Datei. Die FilterOptions sind je nach Typ der .csv Datei anzupassen, findest du hier

Gruß R
Dateianhänge
DATEN.zip
nur entpacken, ist eine .csv Datei
(2.98 KiB) 240-mal heruntergeladen
Windows 10: AOO, LO Linux Mint: AOO, LO

Team14
Beiträge: 5
Registriert: Do 5. Okt 2017, 07:04

Re: CSV mit Autofilter öffnen

Beitrag von Team14 » Mo 26. Mär 2018, 10:47

Danke für eure Hilfe!
Das löst jedenfalls meine ursprüngliche Frage.

Ich hab in der Zwischenzeit einen etwas anderen Weg gefunden, der aber auch vielversprechend scheint.

Es entsteht dabei eine Calc-Datei, die die Formatierung und sonstige Einstellungen behält, die Daten jedoch aus einer CSV kommen.

Ich hab das hier auf meinem Wiki etwas zusammengefasst: http://www.zeilhofer.co.at/wiki/doku.php?id=datenbank

Kuz: Eine Calc-Datei bindet eine Tabelle einer registrierten Datenbank ein, wobei die Datenbank (HSQLDB) auf der CSV basiert.

Leider stehe ich hier vor einem Problem, wo ich nicht mehr weiter weiß. Ich hab die Daten soweit im Calc importiert, aber ich möchte natürlich auch, dass Änderungen dann wieder in der CSV landen, also eine bidirektionale Datenanbindung. Ist sowas überhaupt möglich?

LG, Karl

Team14
Beiträge: 5
Registriert: Do 5. Okt 2017, 07:04

Re: CSV mit Autofilter öffnen

Beitrag von Team14 » Mo 26. Mär 2018, 10:51

@R: Zu deinem Vorschlag per Makro.

Lässt sich das irgendwie dann so einrichten, dass eine CSV-Datei aus dem File-Browser direkt immer so geöffnet wird?

Oder anders gefragt, kann ich aus der Konsole so ein Makro starten? Oder muss dazu schon LibreOffice mit einem Dokument laufen?

LG, Karl

F3K Total
Beiträge: 2409
Registriert: So 10. Apr 2011, 10:10

Re: CSV mit Autofilter öffnen

Beitrag von F3K Total » Mo 26. Mär 2018, 18:30

Moin,
du kannst aus der Konsole LibreOffice starten, und ein auszuführendes Makro, sogar mit Parameter, übergeben, Beispiel:

Code: Alles auswählen

C:\Program Files\OpenOffice 4\program\soffice.exe -norestore -nologo macro:///Standard.Start_application.S_on_hidden_Loading("hallo Welt")
Natürlich musst du die Pfade durch bei dir existierende ersetzen.
Gruß R
Windows 10: AOO, LO Linux Mint: AOO, LO

An alle, die das LibreOffice-Forum nutzen:


Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.

❤️ Vielen lieben Dank für Ihre Unterstützung ❤️

Antworten