Clever-Excel-Forum

Normale Version: VBA - Zeilen ausblenden
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo zusammen,

ich möchte mit einem Button das Ausblenden von Zeilen auslösen. 

Code:
Sub SchülerKNAusblenden()

ActiveSheet.Unprotect
  Dim i As Long

    For i = 22 To 130 Step 4
      Cells(i, 2).MergeArea.Rows.Hidden = Cells(i, 1).Value = 0
    Next i
   
ActiveSheet.Protect

End Sub



Es funktionierte die ganze Zeit, jetzt liefert es mir aber den Laufzeitfehler 1004.
Ich bin dabei zu überlegen, ob ich die Zellverbünde (es sind immer 4 Zellen verbunden) in Spalte A und B wieder auflöse. Aber wie kann ich dann die Zeilen ausblenden.

LG Tina
Hi

Versuche es damit. Sonst eine Bsp.Datei.
Code:
Sub SchülerKNAusblenden()

ActiveSheet.Unprotect
  Dim i As Long

    For i = 22 To 130 Step 4
      Cells(i, 2).Resize(4).EntireRow.Hidden = Cells(i, 1).Value = 0
    Next i
  
ActiveSheet.Protect

End Sub
auch hier die selbe Meldung

Laufzeitfehler ´1004´
"Die Hidden-Eigenschaft des Range-Objektes kann nicht festgelegt werden."

Jetzt wollte ich gerade eine Beispieldatei erstellen, indem ich einfach die Fülle an Tabs lösche, die uninteressant für das Problem sind, dann hat es plötzlich funktioniert. An was kann das denn nun liegen, vielleicht an irgend einem "Calculate"-Code?

LG Tina
Hallöchen,

Zitat:Es funktionierte die ganze Zeit, jetzt liefert es mir aber den Laufzeitfehler 1004.

Code:
indem ich einfach die Fülle an Tabs lösche, die uninteressant für das Problem sind, dann hat es plötzlich funktioniert.

Das sind äußerst aufschlussreiche Angaben für eine Problemanalyse ... Huh
Hallo,

hier die Beispieldatei. Wenn ich einen der Tabs "Text" oder "KN 1-Text w" lösche, funktioniert das Makro wieder.
Ich gehe davon aus, dass es mit irgendwelchen Verknüpfungen zwischen den Tabs zusammenhängt. 

LG Tina
Hallöchen,

gehe den Code schrittweise durch und Du erkennst die Ursache ... Wenn nicht, frag nochmal.
Ich weiß nicht genau wo ich suchen soll. Können es Verknüpfungen innerhalb der Tabellen sein? Welche Art der Verknüpfung kann dabei zu Problemen führen? Muss ich mir nur die VBA-Codes der Tabs anschauen?  Huh
Hallöchen,

nein, sind es nicht.

Du bist also den Code nicht schrittweise durchgegangen. Dein Code löst ein Ereignis aus, in welchem der Blattschutz wieder gesetzt wird. Daraufhin klappt es mit dem Ausblenden nicht, weil das Blatt gerade wieder geschützt wurde. EnableEvents kennst Du?
Hi,

wie gehe ich den Code schrittweise durch? Ich habe mir den Code angeschaut und der Blattschutz wird ja zu Beginn des Codes herausgenommen. 

EnableEvents kenne ich nicht. Ich habe mir die Tabelle Schritt für Schritt zusammengebastelt und lerne nur sehr selektiv dazu. 20


LG Tina
Hallöchen,

ich dachte, bei den vielen Codes solltest Du Dich mit VBA etwas auskennen...
Gehe mal mit dem Cursor in das Makro und drücke F8. Damit geht es los und mit dem nächsten F8 kommt man in die nächste Codezeile usw.
Irgendwann wird dann bei Dir in ein anderes Makro gesprungen.

Um so was zu verhindern, kann man z.B. am Anfang eines Makros oder vor der betreffenden Aktion

Application.EnableEvents = False

programmieren und am Ende bzw. danach muss man es wieder auf True setzen.
Seiten: 1 2