Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1956to1960
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Nur bestimmte Arbeitsblätter ausdrucken

Nur bestimmte Arbeitsblätter ausdrucken
09.12.2023 00:11:14
Thorsten
Hallo zusammen,
leider komme ich mit folgendem Problem nicht weiter.
Und zwar habe ich eine Datei mit 6 verschiedenen Arbeitsblättern (A, B, C, D, E, F).
Jetzt möchte ich, in „A“ einen Button („Ausdruck“) einbauen, der dann automatisch die Arbeitsmappen A, B, D und F ausdruckt. Der Ausdruck sollte nicht unbedingt in PDF sein.
Wie geht das mit VBA ?
Vielen Dank im voraus
Thorsten

19
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Nur bestimmte Arbeitsblätter ausdrucken
09.12.2023 00:46:32
Oberschlumpf
Hi Thorsten,

versuch es mal hiermit


Sub Makro1()

Sheets(Array("A", "B", "D", "F")).Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False

End Sub

Hilfts?

Ciao
ich auch = Thorsten ;-)
Nur ergänzend!
09.12.2023 08:00:03
RPP63
Moin!
Nur ergänzend eine andere Variante:
Sub Druck()

Dim ws As Worksheet
For Each ws In Worksheets
Select Case ws.Name
Case "C", "E" 'nix machen
Case Else: ws.PrintOut
End Select
Next
End Sub

Gruß Ralf
Anzeige
AW: Nur bestimmte Arbeitsblätter ausdrucken
10.12.2023 13:56:44
GerdL
Moin,
ungetestet.
'Modul ufPrtPdf

Private Sub UserForm_Initialize()
lsbSh.Clear
lsbSh.List = Array("a", "d", "e")
End Sub

Gruß Gerd
AW: Nur bestimmte Arbeitsblätter ausdrucken
10.12.2023 18:42:00
Thorsten
danke.
AW: Nur bestimmte Arbeitsblätter ausdrucken
10.12.2023 19:17:06
Oberschlumpf
Hi,

du setzt deinen Beitrag in deiner Antwort an Gerd auf offen - bekomm ich denn keine Antwort mehr?

Ciao
Thorsten
AW: Nur bestimmte Arbeitsblätter ausdrucken
10.12.2023 19:21:09
Thorsten
haste gerade erhalten :-)
AW: Nur Nur bestimmte Arbeitsblätter ausdrucken
09.12.2023 10:00:15
Thorsten
super.
Habe die Kurzversion ausprobiert und PASST. Danke.

Jetzt hab ich aber noch 2 Fragen:

Wie erstelle ich einen Button, denn so wie es jetzt programmiert ist, druckt er mir jedes mal wenn ich den Cursor bewege ?

gibt es die Möglichkeit zu wählen zwischen (a) PDF Ausdruck oder (b) "normaler" Ausdruck (= derzeit) ?

Danke
Thorsten
Anzeige
AW: Nur Nur bestimmte Arbeitsblätter ausdrucken
09.12.2023 10:11:23
Oberschlumpf
Hi Thorsten,

zu deiner neuen Frage fehlen für mich noch so einige Angaben.
Bevor wir aber jetzt mit Frage/Antwort/Frage/Antwort/... so lange "weiterspielen", bis alle Infos vorhanden sind :-), bitte ich dich, uns per Upload eine Excel-Bsp-Datei zu zeigen, in der alles enthalten ist, um dein Problem auch sehen und mit der Datei testen zu können.

Ciao
Thorsten
AW: Nur Nur bestimmte Arbeitsblätter ausdrucken
09.12.2023 11:31:51
Oberschlumpf
Hi Thorsten,

hier, versuch mal
https://www.herber.de/bbs/user/164953.xlsm

Klick auf den neuen Button und...staune...was alles mit VBA möglich ist :-)

Hilfts?

Ciao
Thorsten
Anzeige
AW: Nur Nur bestimmte Arbeitsblätter ausdrucken
09.12.2023 11:41:15
Thorsten
super. klappt perfekt.
Ich komme aus dem Staunen nicht mehr raus *hahahaha.
Vielen Dank
Schönes Wochenende
Thorsten
AW: Nur Nur bestimmte Arbeitsblätter ausdrucken
09.12.2023 11:45:22
Thorsten
jetzt bleibt mir allerdings nur noch die Frage, wie Du das gemacht hast :-).
Kannst Du mir mal die einzelnen Schritte benennen ?
Dann kann ich es auch beim nächsten Mal alleine machen :-)
Vielen Dank
thorsten
AW: Nur Nur bestimmte Arbeitsblätter ausdrucken
09.12.2023 12:12:26
Oberschlumpf
hier noch mal die selbe Datei...
https://www.herber.de/bbs/user/164954.xlsm
...diesmal aber mit vielen Erklär-Kommentaren im Code

Naaa, kannst du es jetzt wirklich selbst + allein beim nächsten Mal?! :-)
Anzeige
AW: Nur Nur bestimmte Arbeitsblätter ausdrucken
09.12.2023 17:12:46
Thorsten
Vielen Dank.
Das ist jetzt auch für einen IT Analphabeten gemacht (= ich).
Vielen Dank nochmal
AW: Nur Nur bestimmte Arbeitsblätter ausdrucken
10.12.2023 11:52:54
Thorsten
sorry, aber ich hab noch eine Frage:
Wie wäre die Programmierung, wenn ich wirklich nur zwischen den Blättern A, D und E entscheiden will (und die anderen erst gar nicht im Menü erscheinen sollen) ?

Danke und sorry nochmal, dass ich dies nicht direkt nachgefragt habe
AW: Nur Nur bestimmte Arbeitsblätter ausdrucken
10.12.2023 12:48:23
Oberschlumpf
...dann mach aus...
If lshAll.Name > "intro" Then

...das hier...


If lshAll.Name = "A" Or _
lshAll.Name = "D" Or _
lshAll.Name = "E" Then


Ach so, wegen der besseren Übersichtlichkeit ist dieser Code vielleicht besser:
Lösch alles von If...bis ...End If und versuch es hiermit...


Select Case lshAll.Name
Case "A", "D", "E"
lsbSh.AddItem lshAll.Name
End Select

Anstelle von A,D und E musst du im Code natürlich die richtigen Blattnamen eintragen.
Bei der 2. Code-Idee kannst du aber einfacher als im If..End If-Konstrukt weitere Blattnamen anhängen, die vllt doch mit angezeigt werden sollen

Hilfts?
Anzeige
AW: Nur Nur bestimmte Arbeitsblätter ausdrucken
10.12.2023 13:19:35
Thorsten
Hallo Oberschlumpf,
ich glaube hier ist ein Fehler drinn, denn ich hab doch im Code gar kein "If lshAll.Name > "intro" Then".

anbei kopier ich hier mal den Code, den ich habe:


Option Explicit
Sub sbPrtPdf(ByVal auswahl As Integer)
Dim liIdx As Integer, larstrSh() As String, lPDF
ReDim larstrSh(0)
With ufPrtPdf.lsbSh
For liIdx = 0 To .ListCount - 1
If .Selected(liIdx) Then
larstrSh(UBound(larstrSh)) = .List(liIdx)
ReDim Preserve larstrSh(UBound(larstrSh) + 1)
End If
Next
End With
ReDim Preserve larstrSh(UBound(larstrSh) - 1)
Select Case auswahl
Case 1
Sheets(larstrSh).Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
Case 2
lPDF = Application.GetSaveAsFilename(InitialFileName:="Project.pdf", FileFilter:="PDF-Datei (*.pdf), *.pdf)", Title:="PDF erzeugen")
If lPDF = False Then Exit Sub

Sheets(larstrSh).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
lPDF, Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=False
End Select

Sheets("Intro").Select

End Sub
Anzeige
AW: Nur Nur bestimmte Arbeitsblätter ausdrucken
10.12.2023 13:55:07
Oberschlumpf
Hi,

schau dir - den ganzen Code! - an.
Die Einträge, die in der ListBox zur Auswahl gezeigt werden sollen, werden - nicht - im Makro sbPrtPdf festgelegt.
(..hab ich eigtl auch in den Kommentaren für IT-Analphabeten (hast du so genannt^^ :-) ) beschrieben...aber ok, vllt musst du öfter lesen, bis du verstehst)

Und wenn du im Beitrag Code zeigst, dann nutz doch bitte auch den Code-Format-Button (direkt oberhalb dieses Eingabefensters einer jeden Antwort).

Viel Erfolg beim Suchen des Coes zum Anpassen an der richtigen Stelle.
Nee, will dich nich ärgern...natürlich könnt ich dir verraten, wo du den Code ändern musst - aber davon lernst du ja nix ;-)

Ciao
Thorsten
Anzeige
AW: Nur Nur bestimmte Arbeitsblätter ausdrucken
10.12.2023 19:17:34
Thorsten
hab es geschafft :-).
Danke für die Hilfestellungen

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige