Registriert seit: 28.02.2021
Version(en): 2013
Hallo, ich bin ganz neu und benötige die Hilfe von echten Excel Spezialisten
Ich benutze Win10 mit Office 2013 auf einem Elitebook 840 G1
Der Drucker ist ein Brother MFC-J480W
Hier meine Frage zu einem Problem bei dem ich nicht weiß ob / wie ich es lösen kann.
Ich habe eine Mappe mit 4 Blättern.
1. Blatt = Berechnung
2. Blatt = Kunde 1
3. Blatt = Kunde 2
4. Blatt = Kunde 3
Auf Blatt 1 ist die Berechnung von Kunde 1 im Bereich von A15: S30
Auf Blatt 1 ist die Berechnung von Kunde 2 im Bereich von A33: S48
Auf Blatt 1 ist die Berechnung von Kunde 3 im Bereich von A51: S66
Nun brauche ich eine Lösung die es ermöglicht dass wenn ich Kunde 1 drucke sich am Ende
dass Blatt dreht (Drucker kann das) und dann den Bereich von Blatt 1 Kunde 1 auf die 2. Seite
im Querformat packt.
Dies natürlich auch für die anderen Kunden.
Bisher habe ich mit Druck Kunde und dann von Hand Blatt gedreht und Bereich markiert gedruckt.
Allerdings habe ich von Makros oder überhaupt so kein Plan.
Ist so was überhaupt möglich?
Gruß Michael
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo Michael,
Code:
Sub DruckenMakro()
Dim lngIndex As Long
With Worksheets("Berechnung")
lngIndex = .Index
.Move , Sheets(Sheets.Count)
.PageSetup.PrintArea = "A15:S30"
Sheets(Array("Kunde1", .Name)).PrintPreview
.PageSetup.PrintArea = "A33:S48"
Sheets(Array("Kunde2", .Name)).PrintPreview
.PageSetup.PrintArea = "A51:S66"
Sheets(Array("Kunde3", .Name)).PrintPreview
.Move Sheets(lngIndex)
End With
End Sub
Gruß Uwe
Registriert seit: 28.02.2021
Version(en): 2013
Hallo Kuwer,
vielen Dank für die Hilfe.
Es macht fast das was es soll.....
Kunde 1 wird gedruckt - Blatt wird gewendet aber leer ausgegeben. Der Bereich wird dann auf einer weiteren Seite gedruckt.
Die Duplex Funktion ist aktiviert
Wie bekomme ich die Daten auf die gewendete Seite?
Würdest Du bitte nochmal helfen??
Gruß Michael
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo Michael,
Code:
Sub DruckenMakro()
Dim lngIndex As Long
With Worksheets("Berechnung")
lngIndex = .Index
.Move , Sheets(Sheets.Count)
.PageSetup.PrintArea = "A15:S30"
End With
With Worksheets("Kunde1")
If .PageSetup.Pages.Count > 1 Then
.PageSetup.PrintArea = Range(.Cells(1), Application.Intersect( _
.HPageBreaks(1).Location.EntireRow, _
.VPageBreaks(1).Location.EntireColumn).Offset(-1, -1)).Address
End If
End With
Sheets(Array("Kunde1", "Berechnung")).PrintOut
Worksheets("Berechnung").PageSetup.PrintArea = "A33:S48"
With Worksheets("Kunde2")
If .PageSetup.Pages.Count > 1 Then
.PageSetup.PrintArea = Range(.Cells(1), Application.Intersect( _
.HPageBreaks(1).Location.EntireRow, _
.VPageBreaks(1).Location.EntireColumn).Offset(-1, -1)).Address
End If
End With
Sheets(Array("Kunde2", "Berechnung")).PrintOut
Worksheets("Berechnung").PageSetup.PrintArea = "A51:S66"
With Worksheets("Kunde3")
If .PageSetup.Pages.Count > 1 Then
.PageSetup.PrintArea = Range(.Cells(1), Application.Intersect( _
.HPageBreaks(1).Location.EntireRow, _
.VPageBreaks(1).Location.EntireColumn).Offset(-1, -1)).Address
End If
End With
Sheets(Array("Kunde3", "Berechnung")).PrintOut
Worksheets("Berechnung").Move Sheets(lngIndex)
End Sub
Gruß Uwe
Registriert seit: 28.02.2021
Version(en): 2013
Hallo Uwe,
ich möchte von dem Ergebnis berichten.
Version 1 die du mir freundlicherweise zur Verfügung gestellt hast hat ja folgendes bewirkt.
Kunde wurde gedruckt dann das Blatt automatisch gewendet aber leer wieder ausgegeben, die Berechnung wurde dann auf dem 2. Blatt gedruckt.
Version 2 bewirkte das Kunde gedruckt wird das Blatt nicht gewendet wird und die Berechnung auf 2. Seite ausgegeben wird. So bei allen Kunden.
Nun bin ich am Überlegen ob ich Version 2 so behalte (Dein Einverständnis vorausgesetzt - da es ja Dein geistiges Eigentum ist) weil ich mir dann wenigstens das Blatt von Hand drehen spare.
Liebe Grüße
Michael
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo Michael,
(01.03.2021, 18:41)Mibre62 schrieb: Nun bin ich am Überlegen ob ich Version 2 so behalte (Dein Einverständnis vorausgesetzt - da es ja Dein geistiges Eigentum ist) weil ich mir dann wenigstens das Blatt von Hand drehen spare.
ich bin damit einverstanden.
Gruß Uwe