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

Druckauswahl - Papierkassetten

Druckauswahl - Papierkassetten
14.02.2013 22:25:09
Rainer
Hallo,
hatte mir aus dem Netz diese Druckauswahl zu nutze gemacht:
Dim lListBox  As Long
Dim aTemp()   As Variant
Dim iIndex    As Integer
Dim DruckerAktiv As String
Dim oSheetAktiv As Object
ReDim vntArray(0)
Set oSheetAktiv = ActiveSheet
'Index-Nummern der selektierte Blätter in temporäres Array schreiben
For lListBox = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(lListBox) Then
iIndex = iIndex + 1
ReDim Preserve aTemp(1 To iIndex)
aTemp(iIndex) = CLng(ListBox1.List(lListBox, 2))
End If
Next lListBox
Me.Hide 'Erforderlich, falls mit Seitenvorschau gearbeitet wird
If iIndex > 0 Then
DruckerAktiv = Application.ActivePrinter 'aktiven Drucker merken
Sheets(aTemp).Select
If Application.Dialogs(8).Show = True Then
End If
Application.ActivePrinter = DruckerAktiv 'gemerkten Drucker wieder aktivieren
End If
oSheetAktiv.Select
Unload Me

Nun möchte ich unterschiedliche Papierkassetten verwenden, was mit Einzelblattdruck auch funktioniert.
Mit o. g. Code wird jedoch leider immer nur eine Kassette angesprochen, was mir auch logisch scheint.
Mit nachfolgendem Code habe ich nun zwar die richtigen Kassetten, aber leider keine Auswahl mehr über die ListBox.
Dim DruckerAktiv As String
DruckerAktiv = Application.ActivePrinter 'aktiven Drucker merken
Tabelle9.Select
If Cells(1, 4) = "ja" And Cells(2, 4) = "ja" Then ActiveSheet.PrintOut
Tabelle8.Select
If Cells(1, 4) = "ja" And Cells(2, 4) = "ja" Then ActiveSheet.PrintOut
Tabelle10.Select
If Cells(1, 4) = "ja" And Cells(2, 4) = "ja" Then ActiveSheet.PrintOut
Tabelle13.Select
If Cells(1, 4) = "ja" And Cells(2, 4) = "ja" Then ActiveSheet.PrintOut
Tabelle12.Select
Die Texte der Listbox werden durch Abfrage mit

If WkSh.Range("D1") = "ja" Then
.AddItem WkSh.Cells(1, 6)

befüllt.
Wie erreiche ich nun, dass ich wieder nur meine angeklickten Tabellenblätter drucke?
Gruß
Rainer

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

Betreff
Datum
Anwender
Anzeige
AW: Druckauswahl - Papierkassetten
15.02.2013 22:04:18
Rainer
Hallo,
habe das Problem nun so

Dim aTemp() As Variant
Dim iIndex As Integer
Dim lListBox As Long
Dim ws As Worksheet
Application.ScreenUpdating = False
'alle ausgewählten Blätter auf nein zurückstellen
For Each ws In Worksheets
If ws.Range("D1") = "ja" Then
ws.Range("D2") = "nein"
End If
Next ws
'neue Selection der ausgewählten Tabellenblätter
For lListBox = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(lListBox) Then
ReDim Preserve aTemp(lListBox)
'aTemp(lListBox) = ListBox1.Value
'zeigt Text der ListBox
aTemp(lListBox) = ListBox1.List(lListBox, 0)
'auf ja setzten und mit Code unten alle drucken (empfiehlt sich für PDF)
'Sheets(aTemp(lListBox)).Range("D2") = "ja"
'oder so direkter Druck
Sheets(aTemp(lListBox)).PrintOut
End If
Next lListBox
'    For Each ws In Worksheets
'      If ws.Range("D2") = "ja" Then
'        - hier nun noch PDF-Auswahl integrieren -
'      End If
'    Next ws
gelöst.
Auf diesen Weg muss zwar der Text in D1 dem Tabellennamen entsprechen, aber es funktioniert.
Gruß Rainer

Anzeige
kann dann zu, oder?
19.02.2013 10:29:50
Klaus
Hallo Rainer,
ich freue mich für dich, dass du dein Problem lösen konntest. Der Beitrag muss jetzt nicht mehr bei "offen" stehen, oder? Ich mach den mal zu.
Grüße,
Klaus M.vdT.

AW: kann dann zu, oder?
19.02.2013 12:00:10
Rainer
Hallo Klaus,
hatte ihn nur offen gelassen, da ich nicht zu den VBA-Profis zähle und es u.U. auch noch eine besser Lösung geben hätte können.
Da aber bis dato nichts mehr gefolgt ist kann der Thread ruhig zu gemacht werden.
Wenn's mit dem PDF wie voreingestellt nicht klappt komme ich wieder auf den Thread zurück.
Vielen Dank und Gruß
Rainer

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige