Makro Speichern unter mit Pfadangabe

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

onit
*
Beiträge: 15
Registriert: Mi, 04.11.2009 13:24

Makro Speichern unter mit Pfadangabe

Beitrag von onit »

Hallo zusammen,

folgende Situation. Ich bekomme oft Mails bei denen eine Dokument angehängt ist, meist aus Word. Ich öffne das Dokument mit Doppelklick aus dem Mail Programm. Es öffnet sich NeoOffice 2.2.4. Jetzt will es dann gleich auf einem Laufwerk speichern und mit einem Namen versehen. Gehe ich auf speichern unter wird mir als Speicherort "Geladene Mail Objekte" vorgeschlagen. Ich muss dann immer durch das ganze Filesystem hangeln. Das geht auch, aber ich hätte gern ein Makro das mir den Speicherort schon vorschlägt und eine Box zur Dateinameneingabe. Meine Künste in der Makroprogrammierung sind gleich null. Habe es mit dem Makrorekorder versucht, jedoch kann ich dann nicht den Dateinamen vergeben.

Evtl. hat ja jemand eine Lösung für mich.

Danke

Tino

Mac OSX 10.4 NeoOffice 2.2.4
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Makro Speichern unter mit Pfadangabe

Beitrag von komma4 »

Willkommen im Forum
onit hat geschrieben:Meine Künste in der Makroprogrammierung sind gleich null. [...]
Evtl. hat ja jemand eine Lösung für mich.
Evtl. ist die Erweiterung Bookmarksmenu etwas für Dich.

Ansonsten fielen mir nur die Varianten ein:
* Einarbeiten in die Programmierung
* OOo-Dienstleister beispielsweise http://webtools.projects.ooodev.org/support/

Viel Erfolg!
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
onit
*
Beiträge: 15
Registriert: Mi, 04.11.2009 13:24

Re: Makro Speichern unter mit Pfadangabe

Beitrag von onit »

Hallo,

danke für den Tipp mit Bookmark. Der geht leider nur in OpenOffice. Wie gesagt habe ich NeoOffice.
Mit der Einarbeitung ist das auch so eine Sache. Das dauert! Wollte eigentlich eine schnelle Lösung. Und für einen Externen ist kein Geld da!
Evtl. hat ja noch jemand eine Idee!

Grüße

Onit
onit
*
Beiträge: 15
Registriert: Mi, 04.11.2009 13:24

Re: Makro Speichern unter mit Pfadangabe

Beitrag von onit »

Hallo nochmal zusammen,

jetzt habe ich was gefunden das funktioniert auch. Jetzt möchte ich das ganze aber noch als Textdatei in UCF8 abspeichern. Habe mit der Zeile .appendFilter schon rumgespielt. Aber das funzt nicht. Unter Sub Speichern habe ich mal eine Doc. als Text abgespeichert und mit dem Recorder aufgezeichnet. Kann ich andere Parameter unter .appendFilter setzen und welche? Kann jemand helfen?

REM ***** BASIC *****
Sub Konverter()
Dim auswahl as Object
Dim dateiname As String
Dim Dialogtyp(0)
akt_doc = ThisComponent
If akt_doc.supportsService("com.sun.star.text.TextDocument") Then
auswahl = createunoservice("com.sun.star.ui.dialogs.FilePicker")
DialogTyp(0) = com.sun.star.ui.dialogs.TemplateDescription.FILESAVE_AUTOEXTENSION
With auswahl
.initialize( DialogTyp())
.enableControl(100,true)
.setvalue(100,0,true)
'mehrere Dateien ja/nein
.SetMultiselectionMode(False)
'Dateityp vorauswählen
.appendFilter("ODF Textdokument *.odt", "*.odt")
'Startverzeichnis
.setDisplayDirectory(ConvertToURL("file:///Users/Benutzer/Desktop/test.txt")
End With

antwort = auswahl.execute
If antwort = 1 then
Datei = auswahl.Files(0)
akt_doc.storeAsUrl(Datei,Array())
end if
End If
End Sub


sub speichern
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
dim args1(3) as new com.sun.star.beans.PropertyValue
args1(0).Name = "URL"
args1(0).Value = "file:///Users/Benutzer/Desktop/test.txt"
args1(1).Name = "FilterName"
args1(1).Value = "Text (encoded)"
args1(2).Name = "FilterOptions"
args1(2).Value = "UTF8,LF,,,"
args1(3).Name = "SelectionOnly"
args1(3).Value = true

dispatcher.executeDispatch(document, ".uno:SaveAs", "", 0, args1())


end sub
Antworten