Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1496to1500
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

auswahl integrieren

auswahl integrieren
31.05.2016 09:42:45
thomas
Hallo Excelfreunde,
ich möchte gern dieses Macro - Abfrage "ja nein abbrechen" in mein Macro integrieren
Sub Druckmenue()
Dim Eingabewert As Byte
Eingabewert = MsgBox("Möchten Sie nur die Vorschau anschauen?", vbYesNoCancel, "Druckabfrage")
If Eingabewert = vbYes Then
MsgBox "Na bitte, also Ja. "
ElseIf Eingabewert = vbNo Then
MsgBox "Also eben nicht!"
Else
MsgBox "Wat denn? Kneifen?"
End If
End Sub

bei druck auf ja
soll das macro nur die vorschau zeigen ( PrintPreview )
bei druck auf nein
soll alles gedruckt werden ( PrintOut)
bei druck auf abbrechen
soll das ganze Macro beendet werden.
Da es manchmal sehr viele Seiten sind wäre es cool wenn ich den Druck zu jederzeit abbrechen könnte und dann alle Druckaufträge gelöscht werden ( geht so etwas? )
dies ist zur Zeit mein Macro
Sub seriendruck_drucken()
'Tabelle11
Dim rng As Range, rngC As Range
Dim Eingabewert As Byte 'gehört zur druckabfrage
Application.ScreenUpdating = False
On Error Resume Next
Tabelle11.AutoFilterMode = False
If Application.Dialogs(xlDialogPrinterSetup).Show Then
End If
Set rng = Tabelle11.Range("A2:A" & Rows.Count).SpecialCells(xlCellTypeConstants)
On Error GoTo Fehler
With Tabelle5    ' hier wird es hinkopiert
If Not rng Is Nothing Then
For Each rngC In rng
If rngC.Offset(0, 11)  "" And IsNumeric(rngC.Offset(0, 11)) Then
.Range("g32") = rngC.Offset(0, 0)
.Range("F32") = rngC.Offset(0, 1)
.Range("g33") = rngC.Offset(0, 2)
.Range("f33") = rngC.Offset(0, 3)
.Range("b35") = rngC.Offset(0, 4)
.Range("b37") = rngC.Offset(0, 5)
.Range("b39") = rngC.Offset(0, 6)
.Range("b41") = rngC.Offset(0, 7)
.Range("b44") = rngC.Offset(0, 8)
.Range("b46") = rngC.Offset(0, 9)
'.Range("i2") = rngC.Offset(0, 10)
.PrintPreview 'copies:=rngC.Offset(0, 4)
'.PrintOut copies:=rngC.Offset(0, 4)
End If
Next
End If
End With
Application.ScreenUpdating = True
Fehler:
'Application.Calculation = xlAutomatic
If Err.Number  0 Then MsgBox "Fehler im Modul: A_anzahl_tage_berechnen" & Err.Number & vbLf  _
& Err.Description
End Sub
alles was ich versucht habe schlug fehl.
Hat jemand eine Idee wie man dies lösen könnte?
besten dank schon im voraus.
liebe grüsse thomas

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: auswahl integrieren
31.05.2016 10:11:03
Rudi
Hallo,
sollte so gehen:
Sub Druckmenue(Eingabewert As Byte)
Eingabewert = MsgBox("Möchten Sie nur die Vorschau anschauen?", vbYesNoCancel, "Druckabfrage") _
Select Case Eingabewert
Case vbYes: MsgBox "Na bitte, also Ja. "
Case vbNo: MsgBox "Also eben nicht!"
Case Else: MsgBox "Wat denn? Kneifen?"
End Select
End Sub

Sub seriendruck_drucken()
'Tabelle11
Dim rng As Range, rngC As Range
Dim Eingabewert As Byte 'gehört zur druckabfrage
Call Druckmenue(Eingabewert)
If Eingabewert = vbCancel Then Exit Sub
Application.ScreenUpdating = False
On Error Resume Next
Tabelle11.AutoFilterMode = False
Set rng = Tabelle11.Range("A2:A" & Rows.Count).SpecialCells(xlCellTypeConstants)
On Error GoTo Fehler
With Tabelle5    ' hier wird es hinkopiert
If Not rng Is Nothing Then
For Each rngC In rng
If rngC.Offset(0, 11)  "" And IsNumeric(rngC.Offset(0, 11)) Then
.Range("g32") = rngC.Offset(0, 0)
.Range("F32") = rngC.Offset(0, 1)
.Range("g33") = rngC.Offset(0, 2)
.Range("f33") = rngC.Offset(0, 3)
.Range("b35") = rngC.Offset(0, 4)
.Range("b37") = rngC.Offset(0, 5)
.Range("b39") = rngC.Offset(0, 6)
.Range("b41") = rngC.Offset(0, 7)
.Range("b44") = rngC.Offset(0, 8)
.Range("b46") = rngC.Offset(0, 9)
'.Range("i2") = rngC.Offset(0, 10)
If Eingabewert = vbYes Then
.PrintPreview
Else
.PrintOut copies:=rngC.Offset(0, 4)
End If
End If
Next
End If
End With
Application.ScreenUpdating = True
Fehler:
'Application.Calculation = xlAutomatic
If Err.Number  0 Then MsgBox "Fehler im Modul: A_anzahl_tage_berechnen" & Err.Number & vbLf  _
_
& Err.Description
End Sub
Gruß
Rudi

Anzeige
AW: auswahl integrieren
31.05.2016 11:17:55
thomas
Hallo Rudi,
cool super das Menü klappt super hab recht vielen dank für diese Lösung.
nur noch eine kleine Nachfrage was macht in der Zeile .PrintOut copies:=rngC.Offset(0, 11)
das =rngC.Offset(0, 11) ?
Kann man hier noch mit einbauen das ich irgendwie eine Möglichkeit habe den laufenden Druck zu jederzeit abzubrechen? Ich hatte mal die Idee alle zu Druckenden Blätter in eine Variable oder in den zwischenspeicher zu speichern
und dann den Druckauftrag auf einmal zum Drucker zu senden. Damit hatte ich gehofft das ich dann den Druck mit einmal Abrechen kann. Meine nächste Idee war erstmal eine einzige PDF zu erstellen und Sie dann zu drucken nun ich konnte davon nichts umsetzen.
Hast du dazu eine Idee? Oder geht es gar nicht?
In jedenfall hab recht vielen vielen dank für deine Lösung.
liebe grüsse thomas

Anzeige
konnte ich lösen deshalb geschlossen
06.06.2016 16:00:34
thomas
Hallo Excelfreunde,
ich konnte dies lösen ich muss nur während des druckvorgangs esc drücken.
liebe grüsse thomas

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige