Microsoft Office Forum [ www.Office-Fragen.de ] >> READONLY <<

Microsoft Office 2003-2019 => Excel => Thema gestartet von: barn0711 am April 21, 2012, 16:57:31 Nachmittag

Titel: Office 2010: Per Checkbox ausgewählte Tabellenblätter drucken
Beitrag von: barn0711 am April 21, 2012, 16:57:31 Nachmittag
Hallo zusammen,

habe folgendes Problem, da meine Kenntnisse  in VBA recht dürftig sind :(

Ich habe eine Mappe mit mehreren Tabellenblättern.

Tabelle 1 enthält mehrere Checkboxen: A1 - A5; B1 - B5,...bis E5 (insgesamt 25 CheckBoxen)

Die Checkboxen A1 - A5 beziehen sich auf ein Tabellenblatt A; mache ich z .B. bei A2 einen Haken, so wird in Tabellenblatt A ein Text eingeblendet.
Die Checkboxen B1 - B5 beziehen sich auf Tabellenblatt B, mache ich da den Haken, wird in Tabellenblatt B Text gezeigt...usw.

Auf Tabellenblatt 1 (das mit den Checkboxen) ist zudem ein Button zum Drucken der Tabellenblätter A, B, usw...

Gedruckt werden dann allerdings sämtliche Tabellenblätter A - E, was so nicht sein soll.

Ziel soll es nun sein, dass nur die Tabellenblätter gedruckt werden, in denen dann auch Text steht, sprich die über die Checkboxen mit Text "gefüttert" wurden. (Tabellenblatt 1 - Haken bei A2 - Ausdruck Tabellenblatt A, ohne die übrigen Blätter B - E)

Hoffe ich hab mich nicht zu umständlich ausgedrückt und man kann meine Schilderung nachvollziehen. Bin nicht so tief in der Materie drin, als dass ich dies mit Fachwörtern umschreiben könnte.

Danke voran schonmal :)
Titel: Antw: Office 2010: Per Checkbox ausgewählte Tabellenblätter drucken
Beitrag von: Officer am April 21, 2012, 17:08:22 Nachmittag
Hallo barn,

gute wäre, wenn Du den Code mit dem gedruckt wird, hier kurz posten könntest.

Code kannst Du wie folgt einfügen:

"{code=vb}"
- Hier steht der Code
- usw.
"{/code}

Die Anführungszeichen bitte weglassen.

Gruß

Officer
Titel: Antw: Office 2010: Per Checkbox ausgewählte Tabellenblätter drucken
Beitrag von: barn0711 am April 22, 2012, 12:07:38 Nachmittag
Hallo,

das hier dürfte der Code sein

Code: Visual Basic
  1. Private Sub CommandButton1_Click()
  2. Sheets(Array("Prolog", "A Baustelleneinrichtung", "B Maschinen, Einrichtungen", _
  3.         "C Arbeitsverfahren", "D Elektrotechnik", "E Allgemeines", "Epilog")).Select
  4.     Sheets("Prolog").Activate
  5.     Sprachauswahl.Hide
  6.     ActiveWindow.SelectedSheets.PrintPreview
  7.     Sheets("Auswahl").Activate
  8. End Sub
  9.  


Button1 ist der Button zum Drucken.
Sprachauswahl bezieht sich auf ein Popup Fenster, welches durch den Button zum Drucken geöffnet wird und die Möglichkeit bietet, zw. 3 Sprachen zu wählen. Erst dann kommt man zur Druckvorschau. Das aber nur am Rande.
Titel: Antw: Office 2010: Per Checkbox ausgewählte Tabellenblätter drucken
Beitrag von: Beverly am April 23, 2012, 08:38:58 Vormittag
Hi,

sind diese CheckBoxen mit dem Tabellenblatt verknüpft - also: wird ihr Zustand (aktiviert/nicht aktiviert) in den Zellen A1 bis E5 ausgegeben? Dann könntest du es nach diesem Prinzip versuchen:

Sub Drucken()
   Dim arrTabellen()
   Dim arrDruck()
   Dim intSpalte As Integer
   Dim intZaehler As Integer
   arrTabellen = Array("A Baustelleneinrichtung", "B Maschinen, Einrichtungen", "C Arbeitsverfahren", "D Elektrotechnik", "E Allgemeines")
   With Worksheets("Auswahl")
      For intSpalte = 1 To 5
         If Application.CountIf(.Range(.Cells(1, intSpalte), .Cells(5, intSpalte)), True) > 0 Then
            ReDim Preserve arrDruck(0 To intZaehler)
            arrDruck(intZaehler) = arrTabellen(intSpalte - 1)
            intZaehler = intZaehler + 1
         End If
      Next intSpalte
   End With
   Worksheets(arrDruck).PrintOut preview:=True
End Sub

Bis später,
Karin
Titel: Antw: Office 2010: Per Checkbox ausgewählte Tabellenblätter drucken
Beitrag von: barn0711 am April 23, 2012, 11:30:09 Vormittag
Hi, Danke schonmal für die Hilfe, doch leider funktioniert das nicht.

Die Umstände haben sich übers Wochenende auch etwas geändert. Ich wills mal kurz im Gesamten erläutern.

In Tabellenblatt 1 ("Auswahl") sind nunmehr vorhanden

Checkboxen A1 - A9, B1 - B6, C1 - C20, D1 - D11 und E1 - E4

Die einzelnen Checkboxen sind in einem anderen Code folgendermaßen bezeichnet:
CheckBox101 (entspricht A1)
CheckBox102 (entspricht A2) bis CheckBox 109 (wäre A9)

CheckBox201 (entspricht B1)
CheckBox206 ist dann B6 usw...

Diese Checkboxen beziehen sich jew. auf weitere Tabellenblätter
"A Baustelleneinrichtung", "B Maschinen, Einrichtungen", "C Arbeitsverfahren", "D Elektrotechnik", "E Allgemeines"

Wird eine Checkbox aktiviert, so wird der vorher im jew. Tabellenblatt ausgeblendete Text nun eingeblendet. Sprich, klicke ich Checkbox A4, so wird der versteckte Text zu A4 im Tabellenblatt "A Baustelleneinrichtung" eingeblendet. Mache ich den Haken wieder weg, so wird auch der text wieder ausgeblendet.

Des Weiteren befindet sich ein Button "Auswahl drucken" (<- Das was vorher per Checkbox ausgewählt wurde, wird dann gedruckt) auf Tabellenblatt 1.

Jetzt passiert aber beim Drucken / in der Druckvorschau folgendes: Hab ich z. B. A4 ausgewählt, so wird Tabellenblatt A (+Prolog, Epilog) gedruckt (was ja auch richtig ist), jedoch auch die weiteren leeren (es ist lediglich eine Überschrift vorhanden) Tabellenblätter B - E.

Auf folgendem Bild, sind noch Button "Alle einblenden und ausblenden" vorhanden. Denke die sind für den Vorgang unerheblich, hab die deswegen nicht erwähnt.

Meine Idee wäre nun Folgende...
Das was ausgedruckt werden soll, muss sich auf die CheckBox(en) beziehen.
Meinetwegen:

Wenn Checkbox101 aktiv, dann Tabellenblatt A drucken... wenn nicht aktiv, dann auch nicht drucken

Nur hab ich keine Ahnung von VBA und weiß nicht wie dies als Code zu schreiben wäre.



(http://www.arbeitsschutz-jansen.de/excel.jpg)

(http://www.arbeitsschutz-jansen.de/tabs.jpg)
Titel: Antw: Office 2010: Per Checkbox ausgewählte Tabellenblätter drucken
Beitrag von: barn0711 am April 24, 2012, 09:18:55 Vormittag
Ich würd mir auch nicht helfen wollen  8)
Titel: Antw: Office 2010: Per Checkbox ausgewählte Tabellenblätter drucken
Beitrag von: Beverly am April 24, 2012, 09:31:45 Vormittag
Hi,

ich kann leider nicht nachvollziehen was du meinst. Mein geposteter Code funktioniert in meiner nachgebauten Arbeitsmappe völlig korrekt.
Vielleicht solltest du deine Arbeitsmappe mal hochladen, damit man sich das am konkreten Beispiel anschauen kann.

Bis später,
Karin
Titel: Antw: Office 2010: Per Checkbox ausgewählte Tabellenblätter drucken
Beitrag von: barn0711 am April 24, 2012, 09:36:17 Vormittag
OK ich werde die Mappe mal hochladen, muss aber vorher den Inhalt löschen, da Firmen intern. Meld mich gleich wieder
Titel: Antw: Office 2010: Per Checkbox ausgewählte Tabellenblätter drucken
Beitrag von: barn0711 am April 24, 2012, 10:02:36 Vormittag
So hier ist die Mappe

www.arbeitsschutz-jansen.de/mappe.xls (http://www.arbeitsschutz-jansen.de/mappe.xls)


Wichtig ist eigentlich nur, dass nur die Tabellenblätter ausgedruckt werden, wo anhand der Checkboxen auch vorher Text eingeblendet wurde + Epilog + Prolog  .

Danke schonmal vorab für die Mühen :)


EDIT: Hab schon eine Lösung aus einem anderen ähnlichen Forum. Danke nochmal für die Hilfe