im Klassenmodul der Tabelle "Übersicht" befinden sich folgende Ereignisprozeduren:
Private Sub ComboBox1_Change()
'On Error Resume Next
Application.ScreenUpdating = False
For j = 6 To 28
If Rows(j).EntireRow.Hidden = True Then
Range("A6:A28").EntireRow.Hidden = False
Exit For
End If
Next j
z = Range("F3") - 1984
Range(Cells(7, 1), Cells(z, 1)).EntireRow.Hidden = True
For i = 2 To 14 Step 2
Cells(z + 1, i) = Cells(z + 1, 2)
Cells(z + 1, i + 1) = "x"
Next i
Application.ScreenUpdating = True
End Sub
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Range("A6:A28").EntireRow.Hidden = False
Worksheets("Original").Range("A7:O28").Copy Destination:=Range("A7")
Application.ScreenUpdating = True
End Sub
Über die Auswahl in der ComboBox wird eine Zeile im Bereich 7:28 ausgewählt. Sodann werden die Zeilen von 7 bis z ausgeblendet und bestimmte Werte innerhalb der Zeile z+1 in die verschiedenen Spalten kopiert. Das funktioniert alles.
Über den CommandButton soll dieser Vorgang rückgängig gemacht werden, d.h. einblenden der Zeilen 6:28 und Kopie ursprünglichen Inhalte aus einer Tabelle "Original". Das funktioniert nur bedingt:
1. Bei Verwendung des obigen Codes wird zwar alles wie vorgesehen rückgängig gemacht. Ich erhalte jedoch den "Laufzeitfehler 1004: Die Hidden-Eigenschaft des Range-Objektes kann nicht zugeordnet werden", wobei beim Debuggen für mich nicht nachvollziehbar die Code-Zeile
If Rows(j).EntireRow.Hidden = True Then
in der
Private Sub ComboBox1_Change()-Ereignisprozedur markiert ist.
2. Wenn ich dies umgehe, indem ich die Codezeile
On Error Resume Next
hinzufüge, werden bei einem Klick auf den CommandButton zwar die Zeilen wieder eingeblendet, _
der Kopiervorgang wird aber nicht durchgeführt.
Hat jemand eine Idee, woran das liegt? Irgendetwas übersehe ich, aber was?
Gruß
Martin