mit MS Access OOo Textdokument speichern

Setup und Komponenten-übergreifende Probleme.

Moderator: Moderatoren

STR
Beiträge: 3
Registriert: Mi, 26.08.2009 07:46

mit MS Access OOo Textdokument speichern

Beitrag von STR »

Hallo Leute,

Ich verwende in einer MS Access.mdb Code zum Bearbeiten von OOo Dokumenten. Das Öffnen und Text austauschen funktioniert gut. Ich habe aber Probleme beim Speichern des Dokumentes.
Ich verwende dafür folgendes:
' speichert eine datei ab. das format wird über den importfilter angegeben
Dim oArgs(0) As Object
Set oArgs(0) = MakePropertyValue(oServiceManager, "FilterName", Filter_Wapper(Format))
Call oDoc.storeToURL(Convertin(OOPath, FilePath), oArgs())

Für Microsoft Word 6.0 z.b. lautet das Format "MS WinWord 6.0". Weiß jemand wie das Format für OOo Writer (ODF) lautet?

Danke
Brigitte
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: mit MS Access OOo Textdokument speichern

Beitrag von komma4 »

Willkommen im Forum.


Das folgende BASIC-Codestück liest alle in Deiner OOo-Version verfügbaren Filternamen aus und zeigt sie an.

Code: Alles auswählen

Sub alleFilter
REM DannyB Posted: Tue Oct 28, 2003 7:49 pm
REM http://www.oooforum.org/forum/viewtopic.phtml?t=3549
  oFF = createUnoService( "com.sun.star.document.FilterFactory" )
  oFilterNames = oFF.getElementNames()
   
   ' Now print the filter names.
   For i = LBound( oFilterNames ) To UBound( oFilterNames )
      Print oFilterNames(i)
   Next
End Sub
Es wird wohl writer8 sein.

Hilft das?
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)
STR
Beiträge: 3
Registriert: Mi, 26.08.2009 07:46

Re: mit MS Access OOo Textdokument speichern

Beitrag von STR »

Hallo Winfried,

danke für deine prompte Antwort.

Writer8 ist nicht ok, da werden die kyrillischen Schriftzeichen beim Speichern in ? umgewandelt.

Was muss ich bei dem code den du mir geschickt hast deklarieren? Die Funktion "CreateUnoService" wird von Access nicht erkannt. Was fehlt mir hier noch?

lg
Brigitte
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: mit MS Access OOo Textdokument speichern

Beitrag von komma4 »

Brigitte,

den Code brauchst Du gar nicht ... der war bloss zur Dokumentation, wenn mal jemand die Suchfunktion benutzen sollte :-#

createUnoService ist eine BASIC-Laufzeitfunktion.
Wenn Du ihn unter Access laufen lassen möchtest, dann nutzt Du wohl VBA als Sprache ..., da bin ich überfragt (lässt sich aber bestimmt googlen).

writer8 ist als FILTER schon richtig für eine ODT-Dokumenterzeugung, wenn Du nun aber von kyrillischen Buchstaben sprichst ... ???
Da ist wohl entweder noch eine Kodierungsangabe nötig - oder es wird der falsche Zeichensatz bei der Darstellung genutzt.
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)
STR
Beiträge: 3
Registriert: Mi, 26.08.2009 07:46

Re: mit MS Access OOo Textdokument speichern

Beitrag von STR »

Hallo Winfried,

den Code wollte ich bloß ausprobieren und habe ihn nicht zum Laufen gebracht. ;)

Für mein Problem noch folgendes: Das Dokument (.odt) ist mit dem Schriftsatz Arial (unicode) manuell erstellt. Ein Teil von diesem Text ist variabel und soll von Access (VBA) ersetzt werden. Ich lade das Dokument, tausche den Text und möchte das Dokument in einem neuen Verzeichnis abspeichern. Und da habe ich nun das Problem, wenn ich den Filter writer8 (dasselbe auch bei "StarWriter 5.0") verwende, werden die Kyrillischen Zeichen als "?" dargestellt. Wenn ich den Filter "MS WinWord 6.0" verwende klappt es. Ich wollte nur grundsätzlich das Format ODF verwenden und nicht auf .doc wechseln.

Also ich habe eine Lösung aber sie gefällt mir nicht so recht.

lg
Brigitte
Antworten