Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Drucken mit Druckvorschau

Drucken mit Druckvorschau
27.11.2021 15:07:41
Edmund
Hallo,
ich möchte ein Tabellenblatt drucken mit Druckvorschau - geht mit meinem Code.
Leider wechselt Exel vor dem Druckbefehl von Windows, also nach der Druckvorschau in die zu druckende Tabelle.
Wie kann ich das unterbinden?
Hier mein Code zum Drucken mit Vorschau:
Option Explicit

Private Sub ButtonDrucken_Click()
'Angebot drucken mit Druckvorschau
'Wenn das Feld "Objekt" (Eingabe D9) keine Daten enthält, wird ein MsgBox mit einem Fehler angezeigt
'und das Speichern wird abgebrochen.
Dim antwort
If Sheets("Eingabe").Range("D9").Value = "" Then
antwort = MsgBox("Ihr Angebot kann nicht gedruckt werden!" & vbLf & _
"Sie haben keine Objektadresse angegeben!", vbCritical + vbOKOnly, "ImmoGrandeTool")
Unload Auswahl_Angebot
Exit Sub
End If
'Angebot drucken mit Druckvorschau
Sheets("Eingabe").Select
Sheets("Druck_Angebot").Visible = True
Sheets("Druck_Angebot").Select
Unload Auswahl_Angebot
Sheets("Druck_Angebot").Select
ActiveWindow.SelectedSheets.PrintPreview
ActiveWindow.SelectedSheets.Visible = False
End Sub
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Drucken mit Druckvorschau
27.11.2021 15:21:57
JoWE
Hallo Edmund,
ich denke das "select" kannst Du Dir sparen, ungetestet so?

Sheets("Eingabe").Select
Sheets("Druck_Angebot").Visible = True
Unload Auswahl_Angebot
With Sheets("Druck_Angebot")
.PrintPreview
.Visible = False
End With
Gruß
Jochen
Anzeige
AW: Drucken mit Druckvorschau
27.11.2021 15:40:00
Edmund
Hallo Jochen,
habe es getestet, leider zeigt er mir vor dem Drucken immer noch die Tabelle "Druck_Angebot" an, das wollte ich eigentlich unterbinden.
'Angebot drucken mit Druckvorschau
Sheets("Eingabe").Select
Sheets("Druck_Angebot").Visible = True
Unload Auswahl_Angebot
With Sheets("Druck_Angebot")
.PrintPreview
.Visible = False
End With
Anzeige
AW: Kannst Du die Arbeitsmappe hochladen?
27.11.2021 15:48:16
JoWE
bei mir (ohne die Userform) klappts
AW: Kannst Du die Arbeitsmappe hochladen?
27.11.2021 16:05:53
JoWE
Hallo Edmund,
ich hatte das "Problem" nicht so richtig erkannt, versuchs mal so:

'Angebot drucken mit Druckvorschau
Application.ScreenUpdating = False
Sheets("Eingabe").Select
Sheets("Druck_Angebot").Visible = True
Unload Auswahl_Angebot
With Sheets("Druck_Angebot")
.PrintPreview
.Visible = False
End With
Application.ScreenUpdating = False
Gruß
Jochen
Anzeige
AW: Kannst Du die Arbeitsmappe hochladen?
27.11.2021 16:11:05
Edmund
Jochen du bist der Beste !!
Hab es eingebaut und es tut was es soll, das Datenblatt "Angebot" taucht vor dem Drucken nicht mehr auf.
Danke
Edmund
AW: Danke für die Rückmeldung
27.11.2021 16:12:54
JoWE
AW: Danke für die Rückmeldung
27.11.2021 20:35:49
Edmund
#Jochen
Schade, hab mich zu früh gefreut, beim Druck von Wert1914 druckt das Programm zwar alle 2 Seiten korrekt, angezeigt wird mir aber nur die erste Seite. Wenn ich normal über Exel drucke mit Vorschau, werden mir alle zwei Seiten angezeigt.
Bei Antrag_drucken traue ich es mir gar nicht einzubauen, da werden 3 verschiedene Arbeitsblätter gedruckt.
'Wert1914 drucken mit Druckvorschau
Application.ScreenUpdating = False
Sheets("Eingabe").Select
Sheets("Druck_Wert1914").Visible = True
Unload Auswahl_Wert1914
With Sheets("Druck_Wert1914")
.PrintPreview
.Visible = False
End With
Application.ScreenUpdating = False
Anzeige
AW: Danke für die Rückmeldung
27.11.2021 22:57:47
JoWE
Hi Edmund,
tja, das ist mir auch unverständlich, eine richtig tolle Lösung finde ich nicht, vielleicht kannst Du mit dem folgendem Workaround leben.
Damit wird das Sheet während der Druckaufbereitung leider doch noch kurz angezeigt:

Sub Wertermittlung_drucken()
Sheets("Eingabe").Select
Application.ScreenUpdating = False
With Sheets("Druck_Wert1914")
.Visible = True
.Application.CommandBars.ExecuteMso "PrintPreviewAndPrint"
End With
End Sub
Darüberhinaus muss noch in "diese Arbeitsmappe" dieses Makro eingebaut werden:

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Sheets("Druck_Wert1914").Visible = False
Application.ScreenUpdating = False
End Sub
Gruß
Jochen
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige