Hi HP
So first of all I tried your macro with the LibreOffice 4.2.0 and did
not experience any problems, once I set up a valid url of course. I
used the following code.
Sub TryToOpenCsvFromTheInternet
Dim loadArgs2(1) as New com.sun.star.beans.PropertyValue
lurl =
"http://download.finance.yahoo.com/d/quotes.csv?s=%40%5EDJI,GOOG&f=nsl1op&e=.csv"
lsfo = "44/32,34,ANSI,2,"
loadArgs2(0).Name = "FilterName"
loadArgs2(0).Value = "Text - txt - csv (StarCalc)"
loadArgs2(1).Name = "FilterOptions"
loadArgs2(1).Value = lsfo
lDoc = StarDesktop.LoadComponentFromURL(lurl,"_blank",0,loadArgs2())
lSheet = lDoc.Sheets().getByIndex(0)
End Sub
When it comes to the documentation of the filter options this is
probably as close as you get:
https://wiki.openoffice.org/wiki/Documentation/DevGuide/Spreadsheets/Filter_Options#Filter_Options_for_the_CSV_Filter
There is also a simple and effective way to find out different
options, as described by Villeroy [1]
<quote>
Open the csv manually with all bells and whistles. Then run the
following code and copy the FilterOptions.
|Sub showFilterOptions()
Dim args(),i%
args() = ThisComponent.getArgs()
for i = 0 to uBound(Args())
if args(i).Name = "FilterOptions" then inputbox
args(i).Name,"",cStr(args(i).value)
next
End Sub|
<end of quote>
[1] http://140.211.11.67/en/forum/viewtopic.php?t=58105&p=256500#p256500
Med vänlig hälsning
Niklas Johansson
HP4 skrev 2014-02-25 16:57:
Hi,
I can't find any information on how to set the arguments for
"LoadComponentFromURL" when loading a csv-file via macro over the
network.
The example below worked fine with OpenOffice some time ago, but yields
exceptions when running it with LibreOffice because the function call
returns a NULL pointer. So my question:
- where can I find a list of valid filters for LibreOffice?
- what arguments do I have to provide to read csv-files?
The available documentation in the API on how to supply these
arguments is
useless when it doesn't provide the allowed values or a hint how to
construct them. Also I couldn't find any helpful information via Google.
BR
HP
--------------------------------------------------------------------
Sub Main
Dim loadArgs2(1) as New com.sun.star.beans.PropertyValue
lurl = "http://domain.org/file.csv"
lsfo = "44/32,34,ANSI,2,"
loadArgs2(0).Name = "FilterName"
loadArgs2(0).Value = "Text - txt - csv (StarCalc)"
loadArgs2(1).Name = "FilterOptions"
loadArgs2(1).Value = lsfo
lDoc = StarDesktop.LoadComponentFromURL(lurl,"_blank",0,loadArgs2())
lSheet = lDoc.Sheets().getByIndex(0)
End Sub
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.