❤️ Helfen Sie noch heute, unser LibreOffice Forum zu erhalten! ❤️
Unterstützen Sie das LibreOffice-Forum und helfen Sie uns, unser Ziel für 2025 zu erreichen!

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱


❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Makro: Datei unter mehreren Formaten abspeichern

WRITER hat alles, was Sie von einer modernen, voll ausgestatteten Textverarbeitung erwarten.
mikele
* LO-Experte *
Beiträge: 1947
Registriert: Mo 1. Aug 2011, 20:51

Re: Makro: Datei unter mehreren Formaten abspeichern

Beitrag von mikele » Mo 19. Jan 2015, 22:18

Hallo Mau,

ich konnte den Fehler nachvollziehen.
Er tritt auf, wenn die Datei aus der das Makro gestartet wurde, noch nie gespeichert wurde, also noch gar keinen Pfad- und Dateinamen hat.
Das lässt sich verschieden umgehen:
1) Das Makro soll in diesem Fall gar nichts tun bzw. eine Fehlermeldung ausgeben.
2) Das Makro soll einen "Standard"-Namen vergeben und in ein "Standard"-Verzeichnis exportieren.
3) Das Makro soll den Dateinamen und den Pfad erfragen.
(Prinzipell kann das Ganze ausgebaut werden zu einem eigene Dialog mit Auswahlmöglichkeiten etc. ... ;) )
zu 1) wäre es also grunsätzlich so (nach sUrl=...)

Code: Alles auswählen

if sUrl= "" then
   msgbox("Speichern Sie die Datei zunächst im odt-Format")
else
  bisheriger Code
end if
end sub
Kannst du deine Makroversion nochmal hochladen, dann kann ich aktueller eingreifen.
Gruß,
mikele

Mau
* LO-Experte *
Beiträge: 460
Registriert: Do 14. Feb 2013, 19:37

Re: Makro: Datei unter mehreren Formaten abspeichern

Beitrag von Mau » Di 20. Jan 2015, 10:55

Lieber mikele,

es ist offensichtlich so, wie du es analysiert hast.

Und ich möchte den Makro, wie anfangs schon gesagt, immer nur aus Dateien heraus einsetzen, die bereits Pfad und Namen haben. Dass der Makro nicht funktioniert, wenn sie noch "Unbenannt" heißen, ist absolut erwünscht.

Du brauchst dir also keine weitere Mühe damit zu machen. Ich hab den Makro aus einer existierenden Datei heraus getestet, und da funktioniert er jetzt einwandfrei. Klasse!

Die Abspeicherung im PDF-Format habe ich, wie gesagt, herausgenommen, weil die erstens mit der Tastenfolge [Alt-D, P] schnell erledigt ist, ohne dass die Ausgangsdatei dann im Zielformat im Arbeitsspeicher bleibt wie bei TXT, DOC usw., und weil zweitens deren Programmierung deutlich komplizierter aussieht.

Gruß,
Mau
Betriebssystem: Windows 10 (x64)

LO-Version: 6.2.8.2 (x64)

mikele
* LO-Experte *
Beiträge: 1947
Registriert: Mo 1. Aug 2011, 20:51

Re: Makro: Datei unter mehreren Formaten abspeichern

Beitrag von mikele » Di 20. Jan 2015, 12:54

Hallo Mau,

schön, dass es klappt.
Das Speichern als pdf word dann aufwändig, wenn diverse Optionen benutzt/gebraucht werden. Ansonsten ist es genauso "simpel" wie die anderen (siehe meine Datei).

Code: Alles auswählen

	args1(0).Name = "URL"
	args1(0).Value = sPfad & sName & ".pdf"
	args1(1).Name="FilterName"
	args1(1).Value = "writer_pdf_Export"
	oDoc.storetoUrl(sPfad & sName & ".pdf",args1())
Noch eine Anmerkung (hast du vielleicht schon benutzt): Wenn die das Makro auf verschiedene Dateien anwenden willst, dann ist es sinnvoll, es in einem Modul unter "Meine Makros" ->"Standard" abzulegen. Dann kannst du das Makro in die Symbolleiste integrieren (Extras->Anpassen->Symbolleisten) und dann per Mausklick aufrufen.
Gruß,
mikele

Mau
* LO-Experte *
Beiträge: 460
Registriert: Do 14. Feb 2013, 19:37

Re: Makro: Datei unter mehreren Formaten abspeichern

Beitrag von Mau » Di 20. Jan 2015, 13:41

Lieber mikele,
mikele hat geschrieben:Das Speichern als pdf wird dann aufwändig, wenn diverse Optionen benutzt/gebraucht werden. Ansonsten ist es genauso "simpel" wie die anderen (siehe meine Datei).
Ja, aber ich habe den Makro dazu mit meinen Vorgaben erstellt, und da wurde ein gewaltiger Rattenschwanz an Vorgaben mit abgespeichert. Und wie das geht, wenn ich es doch mal testen will, weiß ich jetzt.
mikele hat geschrieben:Noch eine Anmerkung (hast du vielleicht schon benutzt): Wenn du das Makro auf verschiedene Dateien anwenden willst, dann ist es sinnvoll, es in einem Modul unter "Meine Makros" ->"Standard" abzulegen. Dann kannst du das Makro in die Symbolleiste integrieren (Extras->Anpassen->Symbolleisten) und dann per Mausklick aufrufen.
Das Erste habe ich von Anfang an gemacht: Ich habe den von LO erstellten Makro nach deinen Vorgaben umgearbeitet.
Das Zweite handhabe ich anders: Ich habe den Makro einer Tastenkombination zugewiesen, weil ich ein absoluter Tastaturfreak bin - für die meisten Handhabungen sparen Tastaturkürzel bis zu 90 % der Zeit, die sie mit der Maus benötigten; man braucht für vieles nicht einmal auf den Bildschirm zu schauen. Meine registrymodicifations.xcu umfasst mittlerweile 1,30 MB, und ich habe mir zu meiner Tastatur mit Calc eine Belegungstabelle angelegt, weil man damit einen schnelleren Überblick bekommt als durch das Tastenbelegungsfenster unter Extras | Anpassen .... Setze ich hier gerne rein oder schicke sie dir, wenn sie dich interessiert.

Ich habe jetzt allerdings bei den ersten Gehversuchen ein Problem bei den türkischen Sonderzeichen entdeckt. Mein Makro ersetzt sie alle durch ?. Ich veranschauliche das an einer Original-PFD-Datei, die ich mit ABBYY in eine TXT-Datei umgewandelt habe, ohne dass die Sonderzeichen wegfielen, und stelle die TXT-Datei daneben, die der Makro aus einer vorher erstellten ODT-Datei erstellt und dabei die Sonderzeichen rausgeschmissen hat.

Gruß,
Mau
Dateianhänge
Türkische Texte txt.odt
(661.23 KiB) 122-mal heruntergeladen
Betriebssystem: Windows 10 (x64)

LO-Version: 6.2.8.2 (x64)

mikele
* LO-Experte *
Beiträge: 1947
Registriert: Mo 1. Aug 2011, 20:51

Re: Makro: Datei unter mehreren Formaten abspeichern

Beitrag von mikele » Di 20. Jan 2015, 22:48

Hallo Mau,

kannst du eine solche odt-Datei mit türkischen Texten mal hochladen (ein paar Zeilen reichen). Aus so einem Bildschirmausdruck kann man praktisch nur entnehmen, dass es so ist wie es ist.
Gruß,
mikele

Mau
* LO-Experte *
Beiträge: 460
Registriert: Do 14. Feb 2013, 19:37

Re: Makro: Datei unter mehreren Formaten abspeichern

Beitrag von Mau » Mi 21. Jan 2015, 14:09

Liebe mikele,

ich habe das Problem, glaube ich, schon selbst lösen können.

Und zwar habe ich mal alle Verschlüsselungsvarianten für TXT-Dateien "händisch" ausprobiert und festgestellt, dass das richtige Ergebnis nur mit Unicode (UTF-8) erzielt wird.
Daraufhin habe ich für diese Verschlüsselung einen Testmakro erstellt (ist in der türkischen Textdatei als Makro abgespeichert). In dem habe ich mir angesehen, was er am bisherigen Programmcode geändert hat.
Und dann habe ich den ursprünglichen Speichermakro so umgebaut wie in der beigefügten Datei ODT-Makro Formate speichern 5.odt abgebildet.

Jetzt funktioniert der Makro wunschgemäß.
Aber vielleicht kannst du dir beides trotzdem noch mal ansehen, ob da nicht doch noch irgendwo eine Macke ist.

Gruß,
Mau
Dateianhänge
ODT-Makro Formate speichern 5.odt
(31.84 KiB) 129-mal heruntergeladen
yal4a06 Türkisch.odt
(35.44 KiB) 125-mal heruntergeladen
Betriebssystem: Windows 10 (x64)

LO-Version: 6.2.8.2 (x64)

Mau
* LO-Experte *
Beiträge: 460
Registriert: Do 14. Feb 2013, 19:37

Re: Makro: Datei unter mehreren Formaten abspeichern

Beitrag von Mau » Sa 24. Jan 2015, 12:14

Liebe Forumsteilnehmer*innen,

gerade entdeckt: eine Extension, die offenbar etwas Ähnliches macht wie das, was wir hier entwickelt haben:
http://extensions.libreoffice.org/exten ... ultisave-1

Ich werde sie nicht selbst ausprobieren, weil unser Makro genau das tut, was ich brauche. Ich habe ihn an eine Tastenkombination gekoppelt, so dass der ganze Vorgang in der Regel in weniger als einer Sekunde erledigt ist.

Aber vielleicht ist irgendjemand ja bereit, von seinen Erfahrungen mit der Extension zu berichten.

Gruß,
Mau
Betriebssystem: Windows 10 (x64)

LO-Version: 6.2.8.2 (x64)


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten