BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das LibreOffice Forum zu erhalten!
> 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. 🤗
Export und Upload aus Calc
Export und Upload aus Calc
Moin zusammen,
ich möchte über ein Makro ein Blatt nach CSV im UTF8-Format exportieren und dieses UTF8 auf einen HTTPS-Server hochladen. Nun habe ich etwas recherchiert und der Upload scheint in Python recht einfach zu sein, für LO-Basic habe ich dazu nichts gefunden. Anders herum habe ich Python nicht gefunden, wie ich den Export gestalte (welchen ich ja 'einfach' aufzeichnen würde).
Kann man nun aus dem LO-Basic noch ein Python-Makro starten oder ist der Export der Daten in Python auch einfach?
Ich kann leider nur etwas MS-Basic und muss mich so oder so einlesen - von daher ist es egal wo.
Niels
ich möchte über ein Makro ein Blatt nach CSV im UTF8-Format exportieren und dieses UTF8 auf einen HTTPS-Server hochladen. Nun habe ich etwas recherchiert und der Upload scheint in Python recht einfach zu sein, für LO-Basic habe ich dazu nichts gefunden. Anders herum habe ich Python nicht gefunden, wie ich den Export gestalte (welchen ich ja 'einfach' aufzeichnen würde).
Kann man nun aus dem LO-Basic noch ein Python-Makro starten oder ist der Export der Daten in Python auch einfach?
Ich kann leider nur etwas MS-Basic und muss mich so oder so einlesen - von daher ist es egal wo.
Niels
Re: Export und Upload aus Calc
Du kannst Libreoffice-Makros auch "von außen" aufrufen:
Unter Windows wird der Befehl "libreoffice" vermutlich "libreoffice.exe" heißen - musst Du suchen.
Wenn Du dem Makro Parameter übergeben willst:
BIBLIOTHEK.MODUL.MAKRONAME ersetzt Du durch den Ort wo Dein Makro zu finden ist. z.B. Standard.Module1.MeinMakroYXZ
Code: Alles auswählen
os.system('libreoffice macro:///BIBLIOTHEK.MODUL.MAKRONAME\\()')
Wenn Du dem Makro Parameter übergeben willst:
Code: Alles auswählen
os.system('libreoffice macro:///BIBLIOTHEK.MODUL.MAKRONAME\\("ParameterA", "ParameterB"\\)')
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu
Re: Export und Upload aus Calc
Da es fertige FTP-Clients gibt, frage ich mich, ob es nicht wesentlich einfacher wäre den Upload-Befehl einfach per SHELL() als Kommandozeile von BASIC aus zu starten.Niels$ hat geschrieben: ↑Mi 20. Jan 2021, 17:30...
ich möchte über ein Makro ein Blatt nach CSV im UTF8-Format exportieren und dieses UTF8 auf einen HTTPS-Server hochladen. Nun habe ich etwas recherchiert und der Upload scheint in Python recht einfach zu sein, für LO-Basic habe ich dazu nichts gefunden.
...
Beispiel z.B. WinSCP
https://superuser.com/questions/239860/ ... mmand-line
Mfg, Jörn
LO 6.0.7 (32Bit) Win8.1 Pro 32 Bit/ LO 6.3.2 Win10 64Bit / LO 6.0.7 Win7 Pro 64 Bit
Re: Export und Upload aus Calc
Danke für Eure Anregungen. WinSCP kann meines Erachtens nicht über ein HTTP-Put eine Datei hochladen, das spricht nur mit einem WebDAV. Aber ich habe ein PowerShell-Script, was das Ganze mit curl löst. Das ist vielleicht ganz gut so, denn ich habe mir bereits in der DotNet-Weld die Ohren an der Digest Authentication gebrochen, dass scheinen die MS-Methoden nich vollumfänglich zu beherrschen.
Ich bin jetzt mit Makroaufzeichnung und wenigen manuellen Anpassungen im Makro schon relativ weit. Ich bereite die Daten auf und exportiere sie. Nun fehlt nur noch der Makro-Start, da werde ich jetzt etwas forschen und ggf. nerven. Hier ist das Herausforderung, dass das Powershell-Script aus dem richtigen Pfad heraus gestartet wird, damit es die curl-Komponenten findet.
Niels
Ich bin jetzt mit Makroaufzeichnung und wenigen manuellen Anpassungen im Makro schon relativ weit. Ich bereite die Daten auf und exportiere sie. Nun fehlt nur noch der Makro-Start, da werde ich jetzt etwas forschen und ggf. nerven. Hier ist das Herausforderung, dass das Powershell-Script aus dem richtigen Pfad heraus gestartet wird, damit es die curl-Komponenten findet.
Niels
Re: Export und Upload aus Calc
Eben stand ich noch vor dem Abgrund - jetzt bin ich einen Schritt weiter
Ich schreibe jetzt aus dem Makro eine CMD-Datei, die ich ausführen will. Doch wie starte ich die aus dem LO-Basic-Macro? Ich habe schon viel gesucht, doch ich finde immer nur, wie ich LO von der Befehlszeile aus starten kann und was es da alles für Parameter gibt. Vermutlich fehlen mir mal wieder die richtigen Suchworte.
Niels
Ich schreibe jetzt aus dem Makro eine CMD-Datei, die ich ausführen will. Doch wie starte ich die aus dem LO-Basic-Macro? Ich habe schon viel gesucht, doch ich finde immer nur, wie ich LO von der Befehlszeile aus starten kann und was es da alles für Parameter gibt. Vermutlich fehlen mir mal wieder die richtigen Suchworte.
Niels
Re: Export und Upload aus Calc
Hallo,
Ich habe absichtlich SHELL() geschrieben.
Schau z.B. hier
https://ask.libreoffice.org/en/question ... ro-solved/
Findet man schnell per Suchmaschine mit
Notfalls gibt es auch die normale Hilfe
https://help.libreoffice.org/3.3/Basic/ ... on_Runtime
Mfg, Jörn
PS Für die Pfade kann man auch im Skript mit cd arbeiten
Ich habe absichtlich SHELL() geschrieben.
Schau z.B. hier
https://ask.libreoffice.org/en/question ... ro-solved/
Findet man schnell per Suchmaschine mit
Code: Alles auswählen
libreoffice basic shell command
https://help.libreoffice.org/3.3/Basic/ ... on_Runtime
Mfg, Jörn
PS Für die Pfade kann man auch im Skript mit cd arbeiten
LO 6.0.7 (32Bit) Win8.1 Pro 32 Bit/ LO 6.3.2 Win10 64Bit / LO 6.0.7 Win7 Pro 64 Bit
Re: Export und Upload aus Calc
Danke Jörn,
wer lesen kann ist wie immer im Vorteil
Um nicht zu viel mit Pfaden jonglieren zu müssen habe ich da bereits den Kram, wie von Dir vorgeschlagen ausgelagert. Ich erstelle dynamisch eine cmd-Datei, in der ich explizit das Laufwerk meines Arbeitsverzeichnisses wähle und dann mit cd in den Pfad wechsle. Dabei ist der Pfad sicherheitshalber noch in Anführungszeichen, falls jemand Leerzeichen in‘s Spiel bringt.
Niels
wer lesen kann ist wie immer im Vorteil
Um nicht zu viel mit Pfaden jonglieren zu müssen habe ich da bereits den Kram, wie von Dir vorgeschlagen ausgelagert. Ich erstelle dynamisch eine cmd-Datei, in der ich explizit das Laufwerk meines Arbeitsverzeichnisses wähle und dann mit cd in den Pfad wechsle. Dabei ist der Pfad sicherheitshalber noch in Anführungszeichen, falls jemand Leerzeichen in‘s Spiel bringt.
Niels
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 ❤️