Gelöst: Probleme beim Drucken Calc Makro und Nummerierung

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Gelöst: Probleme beim Drucken Calc Makro und Nummerierung

Re: Probleme beim Drucken mittels Calc Makro und Nummerierun

von sinac » Di, 18.03.2014 11:24

foobar^2 hat geschrieben:Bei mir half das hinzufügen von

Code: Alles auswählen

Wait 1000
vor dem Loop.
Hallo foobar^2,

Ich habe das nun getestet und es scheint zu funktionieren, es wird korrekt der Reihe nach ausgedruckt. Ich denke das Problem ist damit gelöst.

Vielen Dank für Deine Antwort und Hilfe!

Gelöst: Probleme beim Drucken Calc Makro und Nummerierung

von sinac » Mi, 26.02.2014 15:29

Hallo Forum,

Ich bin neu in die Makroprogrammierung eingestiegen und habe nun ein Problem mit einem meiner ersten Calc Makros.
System: Apache Open Office 4.0.1, Windows 7 Pro, diverse HP Netzwerkdrucker, AOo Calc

Das Problem ist wahrscheinlich ziemlich verwirrend, ich versuche es so gut als möglich darzustellen:

Ziel:
1. Eine Calc Tabelle (Seite), zweigeteilt in einen oberen und einen unteren Bereich, in Zelle G3 ist die erste Zahl und in Zelle G24 die zweite Zahl.
2. Abfragemaske: Wieviele Lose sollen gedruckt werden --> Eingabe x
3. Die Tabelle soll nun je nach Bedürfnis x-mal gedruckt und dabei jede Seite im oberen und unteren Bereich fortlaufend nummeriert werden.

Beispiel:
Ich möchte die Tabelle 20 mal drucken. Auf Ausdruck 1 hat nun die obere Hälfte der Seite die Nummerierung 1 und die untere Hälfte der Seite die Nummerierung 2. Ausdruck 2 hat nun oben die Nummerierung 3 und unten die Nummerierung 4 usw. bis Nummerierung 20 erreicht ist.

Das Makro welches ich geschrieben habe sieht so aus:

Code: Alles auswählen

REM  *****  BASIC  *****
Option Explicit

Sub LoseDruckEigentest

	Dim mydoc as Object
	Dim mysheet as Object
	Dim printProp(0) as New com.sun.star.beans.PropertyValue
	Dim p as Integer
	Dim n as Integer
	Dim zelleoben as Object
	Dim zelleunten as Object
		
	mydoc=thisComponent 
	mysheet=mydoc.Sheets(0)
		
		n = InputBox("Anzahl Lose zum Drucken?", "Achtung! Druck startet nach OK direkt auf dem Standarddrucker!", "1")
			
				p=1
				Do While p < n			

					zelleoben=mysheet.getCellRangeByName("G3")
					zelleoben.value=p
		
					zelleunten=mysheet.getCellRangeByName("G24")
					zelleunten.value=p+1
				
					p=p+2
		
					mydoc.print(printprop())
				Loop 


End Sub


Problem:
Das Makro funktioniert soweit, dass die Tabelle korrekt nummeriert und die Anzahl Ausdrucke an den Drucker übergeben werden (also wenn man 20 Ausdrucke möchte werden 10 Tabellen an den Drucker gegeben da oben unten je eine Zahl). Der Drucker jedoch überspringt teilweise die Nummerierung oder druckt eine Seite doppelt oder dreifach aus.

Also z.B. Ausdruck 1 ist korrekt nummeriert, oben 1 unten 2. Ausdruck 2 ist ebenfalls korrekt weiter nummeriert oben 3 unten 4, bei Ausdruck 3 wird dann aber die Nummerierung übersprungen und oben ist dann die 6 und unten die 7, Ausdruck 4 ist dann gleich wie der vorherige Ausdruck, oben 6 und unten 7 usw. Es gibt jedoch kein erkennbares Muster. Die Ausdrucke werden einfach nicht korrekt nummeriert.

Frage: Kann es sein, dass man mit einem Befehl am Anfang des Makros erst einen Drucker Puffer löschen muss oder ist das Makro an sich total falsch geschrieben?

Über jegliche Hilfe freue ich mich.

Vielen Dank.

Nach oben