Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1536to1540
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

Laufzeitfehler 9 Ausserhalb des gültigen bereichs

Laufzeitfehler 9 Ausserhalb des gültigen bereichs
26.01.2017 19:20:30
Heiko

Hallo zusammen.
Jetzt habe ich das eine Problem dank Eurer Hilfe lösen können, jedoch habe ich jetzt ein neues Problem.
Ich bekomme den laufzeitfehler 9 index außerhalb des gültigen bereichs
angezeigt.
Hat jemand einen Lösungsvorschlag?
Hier der Code

Sub Rechteck1_Klicken()
Dim i As Integer
For i = 1 To 74
Sheets(i).Select
'Wert Überprüfen und Drucken wenn Wert OK
If ActiveSheet.Range("Q13").Value = "Ja" Then
ActiveSheet.PageSetup.PrintArea = "$A$1:$M$124"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
End If
Next i
End Sub

Vorab vielen Dank für Eure Hilfe

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Laufzeitfehler 9 Ausserhalb des gültigen bereichs
26.01.2017 19:34:13
Hajo_Zi
kann es sein das es nicht 74 Sheets gibt?
Kann es sein das es Diagrammsheets gibt?

AW: Laufzeitfehler 9 Ausserhalb des gültigen bereichs
26.01.2017 20:07:25
Luschi
Hallo Heiko,
... oder das nicht alle vorhandenen Sheets vom Typ 'xlWorksheet' sind, so daß die Range-Methode nicht vorhanden ist.
Gruß von Luschi
aus klein-Paris
AW: Laufzeitfehler 9 Ausserhalb des gültigen bereichs
26.01.2017 20:49:53
Heiko
Hallo.
Ja es sind 74 Sheets und nein es sind keine Diagramme dabei.
Es sind alle Blätter xlWorksheets
Gruß Heiko
AW: Laufzeitfehler 9 Ausserhalb des gültigen bereichs
26.01.2017 21:00:13
Gerd L
Hallo Heiko,
ich denke, so gibt es weniger Durcheinander.
Sub Rechteck1_Klicken()
Dim Wsh As Worksheet
For Each Wsh In ThisWorkbook.Worksheets
'Wert Überprüfen und Drucken wenn Wert OK
If Wsh.Range("Q13").Value = "Ja" Then
Wsh.PageSetup.PrintArea = "$A$1:$M$124"
Wsh.PrintOut Copies:=1, Collate:=True
End If
Next
End Sub
Gruß Gerd

  • Anzeige
    AW: Laufzeitfehler 9 Ausserhalb des gültigen bereichs
    26.01.2017 20:58:00
    Daniel
    Hi
    du hast vermutlich weniger als 74 Sheets.
    wenn du alle Blätter drucken willst, dann musst du die Anzahl nicht fix eingeben:
    
    For i = 1 to Sheets.Count
    
    da es in der Datei auch Diagrammblätter geben könnte, für die du das so nicht anwenden kannst, solltest du die Schleife auch nur über die Tabellenblätter (Worksheets) laufen lassen.
    Wenn du keine Diagrammblätter hast, funktioniert es mit Sheets genauso (Sheets sind Worksheets+Charts)
    For i = 1 to Worksheets.Count
    Worksheets(i).Select
    

    eleganter gehts mit der For Each-Schleife und selektieren muss man auch nicht.
    
    dim wsh as Worksheet
    for Each wsh in ActiveWorkbook.Worksheets
    if wsh.Range("Q13").value = "ja" then
    wsh.PageSetup.PrintArea = "$A$1:$M$124"
    wsh.PrintOut
    end if
    next
    
    Gruß Daniel
    Anzeige
    AW: Laufzeitfehler 9 Ausserhalb des gültigen bereichs
    27.01.2017 14:28:53
    Heiko
    Hallo.
    Vielen Dank.
    Dieser Code hat das Problem lösen können
    For i = 1 to Sheets.Count
    

    AW: Laufzeitfehler 9 Ausserhalb des gültigen bereichs
    26.01.2017 22:46:03
    Heiko
    Danke Euch. Ich werde die Makros morgen mal austesten.

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige