Seite 1 von 1
[Gelöst] Libreoffice Makro mkdir ind chdir
Verfasst: Sa 14. Dez 2013, 07:39
von Mister Office
In der Hoffnung das du dich mit Libreoffice Calc auskennst, meine Frage: Kannst du mir helfen?, ich habe ein Problem mit MkDir und Chdir in Libreoffice Calc Makroprogrammiersprache.
1.Wie kann man den Ordner, den man im Makro, mit mkdir erstellt hat, an die Libreoffice Calc Tabellenkalkulation übergeben, damit im Menü von Libreoffice (Gui) der selbige Ordner unter Datei>>Speichern unter erscheint?
2.Oder anders gefragt, kann man aus einem Libreoffice Makro den Menübefehl (Dateidialog) Datei speichern unter manipulieren?
3.Oder anders gefragt, kann man aus einem Libreoffice Makro heraus, den unter Optionen>>Pfade>>Arbeitsverzeichnis (betreff Libre Office Calc also die Gui) manipulieren?
4. zu 1. bis 3. bitte keine msgbox'en
5. Also eine Alternative zu
Solltest du meine Frage beantworten, währe ich dir Dankbar , wenn du mir Quelltext hier postes.
Re: Libreoffice Makro mkdir ind chdir
Verfasst: Sa 14. Dez 2013, 14:30
von F3K Total
Etwa so?
Code: Alles auswählen
sub S_Set_Work_Directory
oPS = createUnoService("com.sun.star.util.PathSettings")
sNewWorkDirectory = "file:///C:/Users/..."
with oPS
.Work = sNewWorkDirectory
.Work_writable = sNewWorkDirectory
end with
end sub
Gruß R
Re: Libreoffice Makro mkdir ind chdir
Verfasst: Sa 14. Dez 2013, 14:56
von Mister Office
F3K Total
Ich habe deinen kompletten Quelltext ausprobiert. Aber funktioniert nicht.
Den Code hatte ich angepasst, und meinen Ordnernamen eingefügt.
Jetzt habe ich nocheinmal eine Frage:
Wenn ich in Libre Office Calc ein Dokument geöffnet habe, wie kann ich das Dokument aus einem Makro heraus abspeichern?
Re: Libreoffice Makro mkdir ind chdir
Verfasst: Sa 14. Dez 2013, 15:07
von F3K Total
Mister Office hat geschrieben: Aber funktioniert nicht.
Dann schau mal unter Extras/Optionen/LibreOffice/Pfade nach. Der letztbenutzte wird solange verwendet, bis du einen Neustart von LO machst.
Speichern:
Code: Alles auswählen
Sub s_Store_To
sUrl = "file:///C:/Users/.../My_Spreadsheet.ods"
Thiscomponent.storeToUrl(sUrl,array())
end sub
Speichern unter:
Code: Alles auswählen
Sub s_Store_As
sUrl = "file:///C:/Users/.../My_Spreadsheet.ods"
Thiscomponent.storeAsUrl(sUrl,array())
end sub
Gruß R
Re: Libreoffice Makro mkdir ind chdir
Verfasst: Sa 14. Dez 2013, 15:30
von Mister Office
F3K Total
Dann schau mal unter Extras/Optionen/LibreOffice/Pfade nach.
Also der Pfad bringt mir nicht's, weil ich habe Linux/Ubuntu 12.04.3 (64Bit)und LibreOffice 3.5.7.2 Build-ID: 350m1(Build:2)
Re: Libreoffice Makro mkdir ind chdir
Verfasst: Sa 14. Dez 2013, 15:43
von Mister Office
Danke an F3K Total, das folgende konnte ich in meinem Quelltext gut unterbringen, und hat auch den gewünschten erfolg gebracht,
Ich bedanke mich bei dir auch für den Tipp mit dem Neustart von Libreoffice calc (LO)
Code: Alles auswählen
Sub s_Store_As
sUrl = "file:///C:/Users/.../My_Spreadsheet.ods"
Thiscomponent.storeAsUrl(sUrl,array())
end sub
Und jetzt die letzten Fragen,
1. Kann ich ohne Probleme, String Variabeln oder Date an den namen My_Spreadsheet.ods anhängen (ich gibs, ich bin Anfänger in Sachen Libreoffice calc ( MakroBasic-Programmierung)?
2. Kann ich My_Spreadsheet.ods auch als x-beliebigername.xls (xls) abspeichern?
Re: Libreoffice Makro mkdir ind chdir
Verfasst: Sa 14. Dez 2013, 15:55
von F3K Total
Mister Office hat geschrieben:1. Kann ich ohne Probleme, String Variabeln oder Date an den namen My_Spreadsheet.ods anhängen (ich gibs, ich bin Anfänger in Sachen Libreoffice calc ( MakroBasic-Programmierung)?
2. Kann ich My_Spreadsheet.ods auch als x-beliebigername.xls (xls) abspeichern?
Zu 1. Den Dateinamen kannst Du mit dem Marko bilden, die Extension (.ods) muss am Ende stehen. Ich empfehle keine Sonder- und Leerzeichen zu verwenden, Beispiel: Meine_Daten123_am_14122013_um_1549_Uhr_gespeichert.ods
Zu 2. Das geht, ist aber definitiv nicht zu empfehlen, beim Konvertieren nach Excel geht öfter etwas verloren. Immer schön im Originalformat arbeiten, und nur zur Übergabe an Andere exportieren.
Gruß R
Re: Libreoffice Makro mkdir ind chdir
Verfasst: Sa 14. Dez 2013, 16:06
von Mister Office
Danke für die Antworten (posting's) in diesem Thread , damit ist gemeint F3K Total.
Das Thema ist gelöst.