Buonasera,
ho difficoltà ha modificare le impostazioni del formato della pagina utilizzando VBscript.
In particolare devo impostare per un foglio di calcolo il formato orizzontale.
Ho trovato questo codice sul manuale di VbaStarOffice ma non riesco a tradurlo in istruzioni valide per il VBscript.
Qualcuno può aiutarmi? Grazie
Dim Doc As Object
Dim Sheet As Object
Dim StyleFamilies As Object
Dim PageStyles As Object
Dim DefPage As Object
Doc = StarDesktop.CurrentComponent
StyleFamilies = Doc.StyleFamilies
PageStyles = StyleFamilies.getByName("PageStyles")
DefPage = PageStyles.getByName("Default")
DefPage.IsLandscape = True
DefPage.Width = 21000
DefPage.Height = 14800
VBscript formato pagina
VBscript formato pagina
OpenOffice 4.2.1 Windows 10
Re: VBscript formato pagina
VBscript ? VbaStarOffice ? spiegati meglio, dove li hai trovati ? Non siamo su Excel.
-------------------
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Re: VBscript formato pagina
Ho scritto sul Forum di OpenOffice proprio perché devo operare con Apache OpenOffice Calc ma utilizzando il linguaggio di script di Microsoft VBscript.
Non sto dicendo un'eresia in quanto sfruttando l'interfaccia UNO (Universal Network Objects) e un linguaggio ad oggetti è possibile sfruttare le API di OpenOffice.
Il mio problema non è chiedere se è possibile farlo in quanto l'ho già utilizzato precedentemente, ho difficoltà nel passare i parametri di formattazione della pagina.
Spero di trovare qualcuno che mi possa aiutare.
Grazie.
Non sto dicendo un'eresia in quanto sfruttando l'interfaccia UNO (Universal Network Objects) e un linguaggio ad oggetti è possibile sfruttare le API di OpenOffice.
Il mio problema non è chiedere se è possibile farlo in quanto l'ho già utilizzato precedentemente, ho difficoltà nel passare i parametri di formattazione della pagina.
Spero di trovare qualcuno che mi possa aiutare.
Grazie.
OpenOffice 4.2.1 Windows 10
Re: VBscript formato pagina
Oltre che a chiedere potresti anche rispondere a chi ti chiede lumi, potrebbe interessare anche ad altri.
-------------------
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Libre Office 7.5.3.2 su Windows 11
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Re: VBscript formato pagina
Nessuno sta dicendo questo ti è stato semplicemente chiesto di spiegarti meglio.hobbit ha scritto: Non sto dicendo un'eresia
Se ti riferisci al formato orizzontale del foglio prova in questo modohobbit ha scritto: ho difficoltà nel passare i parametri di formattazione della pagina.
Codice: Seleziona tutto
Sub Main
Dim Props() As New com.sun.star.beans.PropertyValue
Dim mDI(0) As New com.sun.star.beans.PropertyValue
mDI(0).Name = "PaperOrientation"
mDI(0).Value = com.sun.star.view.PaperOrientation.LANDSCAPE
Dim adrZones(0) As New com.sun.star.table.CellRangeAddress
Foglio = ThisComponent.Sheets(0)
adrZones(0) = Foglio.RangeAddress
Foglio.PrintAreas = adrZones()
ThisComponent.setPrinter( mDI )
ThisComponent.Print(Props())
End Sub
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
Openoffice 4.1.13 su windows 10
Re: VBscript formato pagina
Chiedo scusa a Patel non volevo essere scortese.
Ho provato il codice inviato da Gaetanopr ma in VBscript si blocca già sulla prima riga non è la sintassi corretta.
La funzione che hai utilizzato nella prima riga l'avevo provata in precedenza e la sintassi in VBscript è:
Dim Props (), oSM
Set oSM = CreateObject("com.sun.star.ServiceManager")
Set Props = oSM.Bridge_GetStruct("com.sun.star.beans.PropertyValue")
purtroppo provando il resto non mi funziona.
Penso che il problema sta proprio qui, cioè tradurre nel modo corretto il basic utilizzato nelle macro in VBscript.
Ho provato il codice inviato da Gaetanopr ma in VBscript si blocca già sulla prima riga non è la sintassi corretta.
La funzione che hai utilizzato nella prima riga l'avevo provata in precedenza e la sintassi in VBscript è:
Dim Props (), oSM
Set oSM = CreateObject("com.sun.star.ServiceManager")
Set Props = oSM.Bridge_GetStruct("com.sun.star.beans.PropertyValue")
purtroppo provando il resto non mi funziona.
Penso che il problema sta proprio qui, cioè tradurre nel modo corretto il basic utilizzato nelle macro in VBscript.
OpenOffice 4.2.1 Windows 10
Re: VBscript formato pagina
Allora credo di non aver capito, entrambi i codici sia il tuo che il mio a me funzionano su OpenOffice, lo stesso codice tradotto in Vba potrebbe essere qualcosa del generehobbit ha scritto: Penso che il problema sta proprio qui, cioè tradurre nel modo corretto il basic utilizzato nelle macro in VBscript.
Codice: Seleziona tutto
Option VBASupport 1
Sub Pagina
ActiveSheet.PageSetup.Orientation = xlLandscape
End Sub
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
Openoffice 4.1.13 su windows 10