Topic: CSV : comment les ouvrir directement dans openoffice/libreoffice
Si vous utilisez les CSV pour paramétrer vos familles sous Dynacase, vous avez pu remarquer que la fenêtre de paramétrage des options de libre/openoffice est vite fastidieuse. Voila, un moyen simple de s'en débarasser :
Il faut ajouter la macro suivante (et sa fonction) :
Sub ShowFilterOptions()
args = thiscomponent.getArgs()
for i = 0 to uBound(args())
if args(i).Name = "FilterOptions" then
inputbox "FilterOptions: ","ShowFilterOptions", args(i).Value
exit for
endif
next
End Sub
Sub openSpecialCSV(optional arg)
'calls getusedRange, getopenCSV
REM this is derived from a manually opened file and Sub ShowFilteroptions:
Const myFilterOptions$ = "59,0,76,1,,1036,false,false"
if isMissing(arg) then
Msgbox "Missing File"
exit sub
elseif not FileExists(arg) then
Msgbox arg &" is not a file"
exit sub
else
csvURL = ConvertToURL(arg)
oCSV = getOpenCSV(csvURL, myFilterOptions)
endif
End Sub
Function getOpenCSV(sURL$,sFilterOptions$)
Dim aProps(1) As New com.sun.star.beans.PropertyValue
aProps(0).Name = "FilterName"
aProps(0).Value = "Text - txt - csv (StarCalc)"
aProps(1).Name = "FilterOptions"
aProps(1).Value = sFilterOptions
getOpenCSV = StarDesktop.loadComponentFromURL(sURL, "_blank",0, aProps())
colorAndSize()
end Function
Et ensuite lancer le programme de la manière suivante :
libreoffice 'macro:///Standard.Module1.openSpecialCSV(<ton_path)'
On peut aussi l’ajouter en external tools :
macro:///Standard.Module1.openSpecialCSV($FilePath$)
NB : si vous souhaiter changes les paramétrages d’ouverture, vous pouvez exécuter la macro ShowFilterOptions et récupérer les paramètres en cours ( Const myFilterOptions$ = "59,0,76,1,,1036,false,false").
Merci à http://www.oooforum.org/forum/viewtopic … p;start=15