Registriert seit: 17.12.2018
Version(en): Office Professional Plus 2016
04.03.2020, 11:56
(Dieser Beitrag wurde zuletzt bearbeitet: 04.03.2020, 11:56 von Lopezoli.)
Moin Leute
Folgender Tabellenbereich ist gegeben: "F2:K24". Darin haben einige Zellen Werte, andere sind leer.
Ein Filter sorgt dafür, dass in der Spalte F alle Zellen ohne Inhalt ausgeblendet werden.
Mit Worksheet("BLABLA").PageSetup.PrintArea = "F2:F24" krieg ich ja die F-Spalte als Durchbereich hin und mit .PrintPreview dann die Druckvorschau von allen Reihen welche Werte enthalten.
Wie krieg ich es jetzt aber hin, dass er nacheinander die Spalten F bis K durchgeht, den Filter setzt, als Druckbereiche definiert und in der Druckvorschau mir dann 7 Seiten angezeigt werden, wobei jede Seite die entsprechende Spalte abbildet.
Ziel ist es ein PDF zu erstellen, wo jede Seite eine Spalte der Tabelle ausgibt, unabhängig von der Anzahl der vorgegebenen Spalten. Gibt es eine Möglichkeit die Printbereiche inkl. Filter "zwischenzuspeichern"?
Danke und Gruss
Registriert seit: 11.04.2014
Version(en): Office 2003 - Office 2007 - Office 365
Hallo,
Meinst Du das so?
Microsoft Excel Objekt Tabelle1Sub drucken()
Dim i As Integer
For i = 6 To 11
With Worksheets("BLABLA")
.Range(.Cells(2, i), .Cells(25, i)).PrintPreview
End With
Next
End Sub
Marcus
Gruß
Wissen ist Macht - es ist aber nicht schlimm nicht alles zu wissen.
Man muss nicht alles wissen - man muss nur wissen wo es steht, oder wo man Hilfe bekommt.
Registriert seit: 17.12.2018
Version(en): Office Professional Plus 2016
04.03.2020, 13:24
(Dieser Beitrag wurde zuletzt bearbeitet: 04.03.2020, 13:24 von Lopezoli.)
Grundsätzlich schon, aber wie kriege ich da die Filter rein?
So siehts jetzt aus, wenn nur eine Spalte in der Combobox ausgewählt wird. Ich will es aber auf eine Listbox ändern können:
Code:
Worksheets("Einzel-Daten").Activate
Dim selected As Integer
Dim target As String
Dim target_1 As String
Dim target_2 As String
Dim finden_shooter As Range
Dim treffer_shooter
Set finden_shooter = Rows(2).Find(what:=ComboBox1.Value)
If Not finden_shooter Is Nothing Then
treffer_shooter = finden_shooter.Address
selected = Range(finden_shooter.Address).Column
End If
ActiveSheet.Range("A2").AutoFilter selected, "<>"
target_1 = treffer_shooter
target_2 = Cells(Cells(Rows.count, selected).End(xlUp).Row, Range(treffer_shooter).Column).Address
target = Range(target_1, target_2).Address
ActiveSheet.Range(target).PrintPreview
ActiveSheet.ShowAllData
Worksheets("Daten").Activate
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen,
Zitat:Ziel ist es ein PDF zu erstellen, wo jede Seite eine Spalte der Tabelle ausgibt
um Spalten als einzelne Seiten zu drucken kannst Du entweder senkrechte Seitenumbrüche einfügen - wenn das immer so sein soll auch generell und ohne Makro - und die nicht gewollten Spalten ausblenden oder nur ausgewählte Spalten drucken.
Zitat:So siehts jetzt aus, wenn nur eine Spalte in der Combobox ausgewählt wird. Ich will es aber auf eine Listbox ändern können:
Wenn Du damt meinst, das Du in der Listbox Deine Daten hast, z.B. A1:D10 und davon z.B. die Spalte B und D drucken willst, wird das über eine Listboxauswahl nicht gehen.
Wenn Du in der Listbox aber nur die Spalteneinträge hast, also A, B, C und D und daraus auswählen willst, kannst DU im Code prüfen, was gewählt ist. Du könntest aber auch in einer Combobox Multiselect verwenden.
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)