BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das OpenOffice Forum zu erhalten!
> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des OpenOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als OO-SUPPORTER gekennzeichnet. 🤗
[Gelöst]checkbox abfragen und drucken
[Gelöst]checkbox abfragen und drucken
Hallo und guten Tag in die Runde, ich bin neu hier und auch neu bei Openoffice. Ich hoffe auf Hilfe bei einem Problem,
Ich bräuchte ein Makro welches Checkboxen abfrägt und dann einen Printauftrag einleitet.
ungefähr so
wenn checkbox1 ist wahr dann drucke Tabelle1
wenn checkbox2 ist wahr dann drucke Tabelle2
usw.
es wäre toll wenn jemand helfen könnte.
vielen Dank
Ich bräuchte ein Makro welches Checkboxen abfrägt und dann einen Printauftrag einleitet.
ungefähr so
wenn checkbox1 ist wahr dann drucke Tabelle1
wenn checkbox2 ist wahr dann drucke Tabelle2
usw.
es wäre toll wenn jemand helfen könnte.
vielen Dank
Zuletzt geändert von Luftikus am So 14. Feb 2021, 21:41, insgesamt 1-mal geändert.
Re: checkbox abfragen und drucken
Hallo,
und wenn beide "wahr" sind? "Nur" diese beiden Tabellen?
Wodurch soll der Druck starten?
und wenn beide "wahr" sind? "Nur" diese beiden Tabellen?
Wodurch soll der Druck starten?
Gruß,
mikele
mikele
Re: checkbox abfragen und drucken
Hallo und Danke erstmal für die Antwort, ich frage alle Checkboxen mit einer Schaltfläche ab und die ich markiert habe sollen dann ausgedruckt werden. Im ganzen sind es 27 verschiedene Boxen.
Vielen Dank erstmal.
Sub Checkboxabfrage
oControl = odialog.getControl("CheckBox1").getModel()
if oControl.state = 0 then
MsgBox "State = " & oControl.state & " - nicht ausgewählt "
oControl.label = "Bitte auswählen"
elseif oControl.state = 1 then
MsgBox "State = " & oControl.state & " - ausgewählt "
oControl.label = "Bitte abwählen"
End if
End sub
Ich habe schon ein bisschen rumprobiert, aber hier kommt immer die Meldung ,
oControl = odialog.getControl("CheckBox1").getModel()
Objektvariable nicht belegt
Vielen Dank erstmal.
Sub Checkboxabfrage
oControl = odialog.getControl("CheckBox1").getModel()
if oControl.state = 0 then
MsgBox "State = " & oControl.state & " - nicht ausgewählt "
oControl.label = "Bitte auswählen"
elseif oControl.state = 1 then
MsgBox "State = " & oControl.state & " - ausgewählt "
oControl.label = "Bitte abwählen"
End if
End sub
Ich habe schon ein bisschen rumprobiert, aber hier kommt immer die Meldung ,
oControl = odialog.getControl("CheckBox1").getModel()
Objektvariable nicht belegt
Re: checkbox abfragen und drucken
Hallo,
wo ist die Variable oDialog festgelegt? Hast du einen Dialog erstellt?
Dienen die Checkboxen "nur" zum drucken? Ich frage deshalb, ob es bei 27 nicht zu aufwändig ist, diese alle durchzuklicken.
wo ist die Variable oDialog festgelegt? Hast du einen Dialog erstellt?
Dienen die Checkboxen "nur" zum drucken? Ich frage deshalb, ob es bei 27 nicht zu aufwändig ist, diese alle durchzuklicken.
Gruß,
mikele
mikele
Re: checkbox abfragen und drucken
wo ist die Variable oDialog festgelegt? Hast du einen Dialog erstellt?
Das weiß ich nicht,
ich habs aus einem Buch abgeschrieben. nur zum trainieren
Das Problem ist ,ich muss quer durch die einzelnen sheets immer wieder andere ausdrucken, mal 1,7,9 dann wieder 10 andere und das dachte ich sollte doch nicht unmöglich sein. Jetzt klicke ich halt immer einzelne an.
Das weiß ich nicht,
ich habs aus einem Buch abgeschrieben. nur zum trainieren
Das Problem ist ,ich muss quer durch die einzelnen sheets immer wieder andere ausdrucken, mal 1,7,9 dann wieder 10 andere und das dachte ich sollte doch nicht unmöglich sein. Jetzt klicke ich halt immer einzelne an.
Re: checkbox abfragen und drucken
wenn ich schon mal wüsste wie man die Checkbox abfragt käme ich schon wieder weiter.
Re: checkbox abfragen und drucken
Hallo,
wie sieht den deine Datei aus? Wo befinden sich die Boxen? Ich vermute mal auf einem extra Tabellenblatt.
Sind des immer dieselben Tabellenkombinationen, die gedruckt werden müssen?
wie sieht den deine Datei aus? Wo befinden sich die Boxen? Ich vermute mal auf einem extra Tabellenblatt.
Sind des immer dieselben Tabellenkombinationen, die gedruckt werden müssen?
Gruß,
mikele
mikele
Re: checkbox abfragen und drucken
es ist so das die anklickbaren Boxen auf einen sheet sollen mit einem Button zum auslösen des Druckes der verschiedenen Tabellen.
Re: checkbox abfragen und drucken
So sieht es im Moment aus ich drucke jedes einzelne sheet.
Zuletzt geändert von Luftikus am Di 16. Feb 2021, 20:19, insgesamt 1-mal geändert.
Re: checkbox abfragen und drucken
Hallo,
grundsätzlich ist das Drucken per Makro etwas aufwändig (und auch anders als mit dem Druckdialog).
Ein bisschen Hintergrund:
Gedruckt wir stets das Dokument
Als Argument kann man dabei z. B. die zu druckenden Seiten angeben.
Für eine Calc-Datei bedeutet das nun, dass stets die ganze Datei* gedruckt wird. Die Druckseiten entsprechen in der Regel aber nicht den Tabellenblättern (jedes Tabellenblatt kann ja mehrere Seiten umfassen).
Man kann also nicht einfach sagen, ich drucke Seite 3, wenn ich das 3. Tabellenblatt drucken möchte.
* stimmt natürlich so absolut nicht: wenn irgendwo in dem Dokument ein Druckbereich definiert wurde, dann werden "nur" alle Druckbereiche gedruckt (Tabellen, die keine Druckbereich haben, werden weggelassen).
-----
Das ganze habe ich gerade noch einmal getestet und festgestellt, das sich mein LibreOffice 5.4 ganz anders verhält. Es wird stets das aktuelle Tabellenblatt (unter Beachtung des ggf. eingestellten Druckbereiches) gedruckt bzw. die selektierten Tabellen.
Probier bitte mal bei dir folgendes Makro:
Werden alle Tabellen gedruckt oder nur die aktuelle?
grundsätzlich ist das Drucken per Makro etwas aufwändig (und auch anders als mit dem Druckdialog).
Ein bisschen Hintergrund:
Gedruckt wir stets das Dokument
Code: Alles auswählen
ThisComponent.Print(args())
Für eine Calc-Datei bedeutet das nun, dass stets die ganze Datei* gedruckt wird. Die Druckseiten entsprechen in der Regel aber nicht den Tabellenblättern (jedes Tabellenblatt kann ja mehrere Seiten umfassen).
Man kann also nicht einfach sagen, ich drucke Seite 3, wenn ich das 3. Tabellenblatt drucken möchte.
* stimmt natürlich so absolut nicht: wenn irgendwo in dem Dokument ein Druckbereich definiert wurde, dann werden "nur" alle Druckbereiche gedruckt (Tabellen, die keine Druckbereich haben, werden weggelassen).
-----
Das ganze habe ich gerade noch einmal getestet und festgestellt, das sich mein LibreOffice 5.4 ganz anders verhält. Es wird stets das aktuelle Tabellenblatt (unter Beachtung des ggf. eingestellten Druckbereiches) gedruckt bzw. die selektierten Tabellen.
Probier bitte mal bei dir folgendes Makro:
Code: Alles auswählen
Sub Main
Dim args() as New com.sun.star.beans.PropertyValue
ThisComponent.Print(args())
End Sub
Gruß,
mikele
mikele