[Gelöst] Calc Tabelle Druckausgabe skalieren mit Basic-Makro

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

krueuw
*
Beiträge: 17
Registriert: Sa, 18.03.2017 08:10

[Gelöst] Calc Tabelle Druckausgabe skalieren mit Basic-Makro

Beitrag von krueuw »

Hallo,
in der neuen Version meines Briefassistenten sollen die Fehlzeitenbriefe durch eine detailierte Fehlzeitenauflistung einer vorgegebenen XLSX-Datei ergänzt werden. Leider gelingt es mir nicht ohne manuellen Skalierung das Tabellenblatt auf einer A4-Seite unterzubringen. Sowohl der PDF-Export, als auch der automatische Druck verteilen das Druckergebnis auf vier Seiten, obwohl es problemlos passen sollte. Weiß jemand Rat?

Bisher habe ich folgenden gefundenen Code verwendet:

Code: Alles auswählen

	Sub FZL_drucken
    	dim oRanges(0)
    	osheet = thiscomponent.currentcontroller.activesheet
    	oRanges(0) = osheet.getcellrangebyname("A1:AI72").RangeAddress'Bereich 1
   		osheet.setprintareas(oranges)
    	dim printProp(1) as new com.sun.star.beans.PropertyValue
    	printProp(0).name = "Wait"
    	printProp(0).Value = true
    	printProp(1).name = "CopyCount"
    	printProp(1).Value = 1 
    	ThisComponent.Print(printProp())'Bereich 1 drucken				
	End Sub
Das Beispieldokument im Anhang.
Dateianhänge
Mustermann_Max_2017-09-23_FZL_FZ_T_Arag_V001.xlsx
(23.9 KiB) 115-mal heruntergeladen
Zuletzt geändert von krueuw am So, 24.09.2017 08:22, insgesamt 1-mal geändert.
Ubuntu 16.04 Libreoffice Version: 5.1.6.2
mikeleb
*******
Beiträge: 1316
Registriert: Fr, 09.12.2011 16:50

Re: Calc Tabelle Druckausgabe skalieren mit Basic-Makro

Beitrag von mikeleb »

Hallo,
ich zwar nicht sicher, wie sich eine xslx-Datei mit Makros aus der AOO-/LO-Welt verträgt, aber der Zugang zur Seitenskalierung erfolgt über die Formatvorlage der Seite (dort stellst du es ja auch händisch ein).
Also auf deine Datei bezogen:

Code: Alles auswählen

oSeitenvorlage=Thiscomponent.getStyleFamilies().getByName("PageStyles").getByName("PageStyle_Seite 2 der OA-Anzeige")
oSeitenvorlage.ScaleToPages=1
Gruß,
mikeleb
krueuw
*
Beiträge: 17
Registriert: Sa, 18.03.2017 08:10

[Gelöst]Re: Calc Tabelle Druckausgabe skalieren mit Basic-Makro

Beitrag von krueuw »

Hallo mikeleb,

das Problem ist gelöst. Ich habe deine zwei Zeilen unterhalb von DIM eingefügt und es funktioniert. Vielen Dank!

krueuw
Ubuntu 16.04 Libreoffice Version: 5.1.6.2
Antworten