Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
1012to1016
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
Arbeitsblätter UND Diagrammblätter drucken
29.09.2008 15:12:24
th.heinrich
Bestes Forum,
Mit diesem Beispiel von Hans können Arbeitsblätter in einer User-Form zum Druck gewählt werden.
Option Explicit

Private Sub cmdAbbrechen_Click()
Unload Me
End Sub



Private Sub cmdDrucken_Click()
Dim arrWks()
Dim iCounter As Integer, iCount As Integer
For iCounter = 0 To lstDrucken.ListCount - 1
If lstDrucken.Selected(iCounter) Then
Worksheets(lstDrucken.List(iCounter)).PrintOut
End If
Next iCounter
Unload Me
End Sub



Private Sub UserForm_Initialize()
Dim wks As Worksheet
For Each wks In Worksheets
If wks.Visible = True Then
lstDrucken.AddItem wks.Name
End If
Next wks
End Sub


Sind Diagrammblätter vorhanden, sollte es mit Sheets statt Worksheets gehen. Wer kann bitte helfen.
Gruss thomas

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Arbeitsblätter UND Diagrammblätter drucken
29.09.2008 15:19:00
Rudi
Hallo,

Sind Diagrammblätter vorhanden, sollte es mit Sheets statt Worksheets gehen. 


Damit bist du schon auf dem richtigen Weg.


Private Sub UserForm_Initialize()
Dim wks As Object
For Each wks In Sheets
If wks.Visible = True Then
lstDrucken.AddItem wks.Name
End If
Next wks
End Sub

Gruß
Rudi

AW: Arbeitsblätter UND Diagrammblätter drucken
29.09.2008 16:05:37
th.heinrich
Hallo Rudi
Index ausserhalb des gültigen Bereichs in Codezeile
Worksheets(lstDrucken.List(iCounter)).PrintOut
Gruss thomas
Fehlerergänzung...
29.09.2008 16:13:00
th.heinrich
Hallo Rudi,
Fehler tritt nur beim Druckversuch des Diagrammblattes auf.
thomas
Anzeige
AW: Fehlerergänzung...
29.09.2008 16:17:49
Rudi
Hallo,
ersetze Worksheets durch Sheets.
Gruß
Rudi
AW: roger, vielen dank oT.
29.09.2008 16:37:24
th.heinrich
AW: Arbeitsblätter UND Diagrammblätter drucken
29.09.2008 15:29:27
Tino
Hallo,
vieleicht geht es so.
Dialog UserForm1
Option Explicit 
 
 
 
Private Sub cmdDrucken_Click() 
Sheets(CStr(lstDrucken)).PrintOut 
 Unload Me 
End Sub 
 
Private Sub UserForm_Initialize() 
   Dim A As Integer 
   For A = 1 To Sheets.Count 
      If Sheets(A).Visible = True Then 
        lstDrucken.AddItem Sheets(A).Name 
      End If 
   Next A 
End Sub 


Gruß Tino

Anzeige
AW: Arbeitsblätter UND Diagrammblätter drucken
29.09.2008 16:11:25
th.heinrich
Hi Tino,
in Codezeile
Sheets(CStr(lstDrucken)).PrintOut
unzulässige Verwendung von Null
Gruss thomas
? kann ich nicht nachvollziehen
29.09.2008 17:08:00
Tino
Hallo,
in CStr(lstDrucken), sollte Dein Tabellenname sein den Du in der ComboBox gewählt hasst, kann also nicht Null sein.
Gruß Tino
AW: ? kann ich nicht nachvollziehen
30.09.2008 12:01:39
th.heinrich
Servus Tino,
sorry kann erst jetzt antworten. Code schaut jetzt so aus.
Option Explicit

Private Sub cmdAbbrechen_Click()
Unload Me
End Sub



Private Sub cmdDrucken_Click()
Sheets(CStr(lstDrucken)).PrintOut  'unzulässige Verwendung von Null
Unload Me
End Sub



Private Sub UserForm_Initialize()
Dim A As Integer
For A = 1 To Sheets.Count
If Sheets(A).Visible = True Then
lstDrucken.AddItem Sheets(A).Name
End If
Next A
End Sub


Fehlermeldung sowohl beim Druckversuch eines Tabellenblattes, alsauch Diagrammblattes wie oben.
Gruss thomas

Anzeige
Vieleicht liegt es an Office 2000
30.09.2008 14:01:00
Tino
Hallo,
vielleicht liegt es daran, dass Office 2000 etwas kleinlich ist, unter 2003 geht der Code.
Eventuell müsste es so akzeptiert werden.
Option Explicit

Private Sub cmdAbbrechen_Click()
Unload Me
End Sub



Private Sub cmdDrucken_Click()
Sheets(CStr(lstDrucken.Value)).PrintOut  'unzulässige Verwendung von Null
Unload Me
End Sub



Private Sub UserForm_Initialize()
Dim A As Integer
For A = 1 To Sheets.Count
If Sheets(A).Visible = True Then
lstDrucken.AddItem Sheets(A).Name
End If
Next A
End Sub


Gruß Tino

Anzeige
AW: Funzzt leider auch nicht oT.
30.09.2008 16:32:42
th.heinrich
dann weis ich auch nicht...
30.09.2008 16:58:00
Tino
Hallo,
..., unter 2003 und 2007 geht dies.
Gruß Tino
AW: Funzzt leider auch nicht oT.
30.09.2008 17:00:00
Gerd
Hallo,
vlt. liegt es daran, dass in der Listbox nix ausgewählt worden ist?

Private Sub cmdDrucken_Click()
If lstDrucken.ListIndex > -1 then
Sheets(CStr(lstDrucken.Value)).PrintOut  'unzulässige Verwendung von Null ?
End if
Unload Me
'End if  'oder hier
End Sub


Gruß Gerd

AW: Fehlermeldung bleibt
01.10.2008 10:47:22
th.heinrich
Danke Gerd,
für Deine Hilfe, aber egal wo End If gesetzt wird, es bleibt bei der Fehlermeldung.
Bei den bisherigen Versuchen war auch immer ein Eintrag der ListBox gewählt.
Gruss thomas
Anzeige

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige