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.
26.02.2022, 18:23 (Dieser Beitrag wurde zuletzt bearbeitet: 26.02.2022, 18:53 von so.egal.)
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?
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.
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?
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?
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:1 Nutzer sagt Danke an schauan für diesen Beitrag 28 • so.egal
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.
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:1 Nutzer sagt Danke an schauan für diesen Beitrag 28 • so.egal