Hallo Forum,
inzwischen habe ich mehrere Stunden gesucht und nichts Passendes gefunden:
Mein OOo-2.0-Makro lädt eine schlichte, kurze CSV-Testdatei nicht in Calc, sondern in Writer.
Hier das Makro:
Sub Main
Dim oDoc As Object
Dim FileProperties(0) As New com.sun.star.beans.PropertyValue
Dim Url As String
Url = "file:///C:/temp/123.CSV"
FileProperties(0).Name = "FilterName"
FileProperties(0).Value ="scalc: Text - txt - csv (StarOffice Calc)"
oDoc = StarDesktop.loadComponentFromURL(Url, "_blank", 0, FileProperties())
End Sub
Auch den Value habe ich schon vielmals variiert, ohne Erfolg.
Manuelles Öffnen als Text - CSV (*.csv, *.txt) öffnen sie korrekt in Calc.
Kann jemand helfen?
Gruß, peteraw.
Makro lädt CSV-Datei in Writer statt in Calc
Moderator: Moderatoren
Makro lädt CSV-Datei in Writer statt in Calc - Lösung
Also, ich habe es jetzt hinbekommen, mit Hilfe des sehr anschauenswerten Codes von
http://www.oooforum.org/forum/viewtopic ... ght=#71125
Danke, Super User ms777!
Leider ist es etwas umständlich, scheint aber hundertprozentig zu funktionieren, weil ich mit dem komplizierten
"FilterOptions"-String der Konvention im Developers-Guide, Punkt 8.2.2, Unterpunkt "Filter Options for the CSV Filter" entspreche.
In meinem speziellen Fall müssen alle im CSV-File enthaltenen Werte als Text eingelesen werden.
Im FilterOptions-String ordne ich deshalb den Spalten 1...10 den Typ 2 (Text) zu.
Hier der Code:
Sub Main
Dim oDoc As Object
Dim FileProperties(1) As New com.sun.star.beans.PropertyValue
Dim Url As String
Url = "file:///C:/temp/123.CSV"
FileProperties(0).Name = "FilterName"
FileProperties(0).Value = "Text - txt - csv (StarCalc)"
FileProperties(1).Name = "FilterOptions"
FileProperties(1).Value = "44,34,ANSI,1,1/2/2/2/3/2/4/2/5/2/6/2/7/2/8/2/9/2/10/2"
oDoc = StarDesktop.loadComponentFromURL(Url, "_blank", 0, FileProperties())
End Sub
Ich denke, es gibt momentan keine bessere Lösung, lasse mich aber gern belehren.
Gruß, peteraw.
http://www.oooforum.org/forum/viewtopic ... ght=#71125
Danke, Super User ms777!
Leider ist es etwas umständlich, scheint aber hundertprozentig zu funktionieren, weil ich mit dem komplizierten
"FilterOptions"-String der Konvention im Developers-Guide, Punkt 8.2.2, Unterpunkt "Filter Options for the CSV Filter" entspreche.
In meinem speziellen Fall müssen alle im CSV-File enthaltenen Werte als Text eingelesen werden.
Im FilterOptions-String ordne ich deshalb den Spalten 1...10 den Typ 2 (Text) zu.
Hier der Code:
Sub Main
Dim oDoc As Object
Dim FileProperties(1) As New com.sun.star.beans.PropertyValue
Dim Url As String
Url = "file:///C:/temp/123.CSV"
FileProperties(0).Name = "FilterName"
FileProperties(0).Value = "Text - txt - csv (StarCalc)"
FileProperties(1).Name = "FilterOptions"
FileProperties(1).Value = "44,34,ANSI,1,1/2/2/2/3/2/4/2/5/2/6/2/7/2/8/2/9/2/10/2"
oDoc = StarDesktop.loadComponentFromURL(Url, "_blank", 0, FileProperties())
End Sub
Ich denke, es gibt momentan keine bessere Lösung, lasse mich aber gern belehren.
Gruß, peteraw.