Clever-Excel-Forum

Normale Version: Makro funktioniert nicht
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,
ich habe einen Button auf einem Tabellenblatt (2022), beim Drücken dieses Buttons soll ein Teil eines anderes Tabellenblattes  (NamenslistePF) ausgedruckt werden und dann wieder auf das aktuelle Tabellenblatt (2022) gesprungen werden.

Der Makrotext ist:
Sub Druck()
'
' Druck Makro
'

'
    Sheets("NamenslistePF").Select
    Range("A1:E51").Select
    ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate _
        :=True, IgnorePrintAreas:=False
    Sheets("2022").Select
End Sub





Es zeigt die Fehlermeldung an:
Laufzeitfehler 9
Index außerhalb des gültigen Bereichs


Was mache ich falsch?

früher (vor dem hin- und herkopieren von Tabellenblättern) hat es immer funktioniert...

ich bin jetzt nicht so der Excel-Experte, wenn jemand eine Idee hat, wäre das super.

Grüße,
tannenbaum
Oh Tannenbaum,

tut mir leid, das musste jetzt sein.  Blush Wenn du dich ernsthaft mit Makros beschäftigen möchtest, solltest du dir als erstes die Verwendung von Select abgewöhnen. Die Fehlermeldung deutet darauf hin, dass du da auf ein Tabellenblatt? referenzierst, das es nicht gibt. Das kann man aber anhand deines Quelltextes nicht überprüfen. Welche Programmzeile wird denn markiert?
Auch Hallo,

mal als Ansatz

Code:
Sub Druck()
'
' Druck Makro
'
'
   With Worksheets("NamenslistePF")
      'Druckbereich festlegen
      .PageSetup.PrintArea = "$A$1:$E$51"
      .PrintOut From:=1, To:=1, Copies:=1, Collate _
           :=True, IgnorePrintAreas:=False
      'Druckbereich aufheben
      .PageSetup.PrintArea = ""
   End With
End Sub
In VBA darf man nicht springen.