Microsoft Excel

Herbers Excel/VBA-Archiv

Druckt, wenn Seite über Text verfügt

Betrifft: Druckt, wenn Seite über Text verfügt von: Oliver B.
Geschrieben am: 17.11.2014 19:17:28


Hallo liebes Forum

Ich möchte folgende Funktion ausführen.
Auf einem Tabellenblatt werden viele Seiten sortiert und aufgelistet,
je acht Seiten für ein Bereich untereinander und 14 Bereiche nebeneinander.
Wenn in einer bestimmten Zelle auf der Seite ein X steht,
dann soll diese Seite ausgedruckt werden.
Dazu habe ich dieses VBA gefunden, der dann auf acht Seiten verlängert wird.
Im Beispiel für 2 Seiten.

Sub Druckt_SeitenListe_1()
Dim RetVal As String
    RetVal = Range("A7").Value
    If UCase(RetVal) = "X" Then
        ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
        :=True
    End If
    RetVal = Range("A52").Value
    If UCase(RetVal) = "X" Then
        ActiveWindow.SelectedSheets.PrintOut From:=2, To:=2, Copies:=1, Collate _
        :=True
    End If
End Sub

Das funktioniert, aber ...
Die Seitenvorschau soll zur Kontrolle eingeschaltet bleiben.
Mit dieser Funktion wird immer nur eine Seite gedruckt und dann
wird die Seitenvorschau wieder aufgerufen.
Das macht es in der Handhabung umständlich.

Wie wäre es möglich, die Anzahl der Seiten zu addieren und
in einem Schwung auszudrucken?
BSP: Bis zur 4 Seite steht das X und es werden vier Seiten gedruckt?

Mit meinen Makro-Recorder-Kenntnissen würde ich einen sehr umständlichen Weg
gehen. Vielleicht habt ihr eine elegantere Idee.

Vorab vielen Dank für Eure Ideen
Oliver B.

  

Betrifft: AW: Aufgabe gelöst von: Oliver B.
Geschrieben am: 18.11.2014 00:34:14


Hallo,

ich hoffe, dass niemand gerade daran arbeitet,
denn ich habe jetzt die Aufgabe mit Fleiß statt
mit Eleganz gelöst. Falls jemand doch kurz vor einer
Lösung steht, dann werde ich es noch einarbeiten.

Ich habe die oben genannt Formel 112 mal verwendet.

Bis bald mal wieder
Oliver B.