AW: String für Druckbereich drucken
01.12.2017 12:01:17
Werner
Hallo Michael,
ich habe das jetzt folgendermaßen gemacht:
-vorhandene Daten in Tabelle2 löschen
-komplette Daten von Tabelle1 nach Tabelle2 kopieren
-in Tabelle2 die Formeln durch die Werte ersetzen
-in Tabelle2 Artikel ohne Bestellung löschen
-Tabelle2 drucken
-Druckt derzeit im Hochformat
Sub drucken()
Dim loLetzte As Long
With Worksheets("Tabelle2")
'vorhandene Daten in Tabelle2 löschen
.UsedRange.Delete
'Daten von Tabelle1 nach Tabelle2 kopieren
Worksheets("Tabelle1").Cells.Copy .Cells(1, 1)
'Tabelle2 Formeln durch Werte ersetzen
loLetzte = .Cells(.Rows.Count, 8).End(xlUp).Row
.Range(.Cells(2, 1), .Cells(loLetzte, 8)).Value = _
.Range(.Cells(2, 1), .Cells(loLetzte, 8)).Value
'Tabelle2 Artikel ohne Bestellung löschn
For i = loLetzte To 2 Step -1
If .Cells(i, 8) = "" Then
.Rows(i).Delete
End If
Next i
'Tabelle2 Bestelliste drucken
loLetzte = .Cells(.Rows.Count, 8).End(xlUp).Row
.PageSetup.PrintArea = .Range(.Cells(2, 1), .Cells(loLetzte, 8)).Address
.PageSetup.Orientation = xlPortrait 'Hochformat
'.PageSetup.Orientation = xlLandscape 'Querformat
.PageSetup.FitToPagesWide = 1
.PrintPreview 'hier auf .PrintOut ändern
End With
End Sub
Ich habe derzeit nur die Druckvorschau eingestellt, damit du das Ergebnis siehst. Du mußt dann für den Ausdruck im Code nur noch das .PrintPreview durch .PrintOut ersetzen.
Gruß Werner