Questa macro di openoffice calc, permette l’esportazione di un area di celle che salva nel percorso desiderato in formato PDF. La uso come esportazione delle fatture.
Creo un foglio di openoffice calc per ogni fattura, clicco sul pulsante esporta che mi assegna il numero della fattura all’interno del nome del file, ed il nome dell’intestatario della fattura, nel percorso che desidero.
REM ***** BASIC *****
sub EsportaSelezione
rem ———————————————————————-
rem define variables
dim document as object
dim dispatcher as object
dim index as integer
REM dim indexPoint as integer
rem ———————————————————————-
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService(“com.sun.star.frame.DispatchHelper”)
rem ———————————————————————-
rem save current sheet
oDoc1 = Thiscomponent
oSheet1 = oDoc1.CurrentController.getActiveSheet() ‘ the active sheet
sheetoffset1=oSheet1.Rangeaddress.sheet ‘ uses rangeaddress of whole sheet
rem ———————————————————————-
rem clear all print area
For index = 0 to Ubound(thisComponent.getSheets.getElementNames)
oSheet = ThisComponent.Sheets.getByIndex(index)
ThisComponent.CurrentController.setActiveSheet(oSheet)
document = ThisComponent.CurrentController.Frame
dispatcher.executeDispatch(document, “.uno:DeletePrintArea”, “”, 0,Array())
Next index
rem ———————————————————————-
rem set original sheet
ThisComponent.CurrentController.setActiveSheet(oSheet1)
document = ThisComponent.CurrentController.Frame
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = “ToPoint”
args1(0).Value = “C2:Q32”
dispatcher.executeDispatch(document, “.uno:GoToCell”, “”, 0, args1())
rem ———————————————————————-
dispatcher.executeDispatch(document, “.uno:DefinePrintArea”, “”, 0, Array())
rem ———————————————————————-
dim args3(2) as new com.sun.star.beans.PropertyValue
dim cella(0) as new com.sun.star.beans.PropertyValue
dim varNumFatt as integer
varNumFatt = sheetoffset1 -1
REM MsgBox “In stampa PDF Fattura numero ” + (varNumFatt)
oCell = oSheet1.getCellByPosition(11,4)
pCell = oCell.string
REM MsgBox “Contenuto cella ” + (pCell)
args3(0).Name = “URL”
args3(0).Value = “file:///C:/Users/Ermeglio/Dropbox/Lavoro/Fatturazione/Stampate%20Contabilizzate13/”+ varNumFatt +” – “+ pCell +”.pdf”
args3(1).Name = “FilterName”
args3(1).Value = “calc_pdf_Export”
args3(2).Name = “FilterData”
args3(2).Value = Array(Array(“UseLosslessCompression”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“Quality”,0,90,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“ReduceImageResolution”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“MaxImageResolution”,0,300,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“UseTaggedPDF”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“SelectPdfVersion”,0,0,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“ExportNotes”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“ExportBookmarks”,0,true,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“OpenBookmarkLevels”,0,-1,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“UseTransitionEffects”,0,true,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“IsSkipEmptyPages”,0,true,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“IsAddStream”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“EmbedStandardFonts”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“FormsType”,0,0,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“ExportFormFields”,0,true,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“AllowDuplicateFieldNames”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“HideViewerToolbar”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“HideViewerMenubar”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“HideViewerWindowControls”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“ResizeWindowToInitialPage”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“CenterWindow”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“OpenInFullScreenMode”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“DisplayPDFDocumentTitle”,0,true,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“InitialView”,0,0,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“Magnification”,0,0,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“Zoom”,0,100,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“PageLayout”,0,0,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“FirstPageOnLeft”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“InitialPage”,0,1,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“Printing”,0,2,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“Changes”,0,4,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“EnableCopyingOfContent”,0,true,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“EnableTextAccessForAccessibilityTools”,0,true,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“ExportLinksRelativeFsys”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“PDFViewSelection”,0,0,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“ConvertOOoTargetToPDFTarget”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“ExportBookmarksToPDFDestination”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“_OkButtonString”,0,””,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“EncryptFile”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“PreparedPasswords”,0,,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“RestrictPermissions”,0,false,com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“PreparedPermissionPassword”,0,Array(),com.sun.star.beans.PropertyState.DIRECT_VALUE),Array(“”,0,,com.sun.star.beans.PropertyState.DIRECT_VALUE))
dispatcher.executeDispatch(document, “.uno:ExportToPDF”, “”, 0, args3())
end sub
Commenti recenti