zu umfangreicher Range "umgehen"
Peter
In meiner Tabelle "B" ermittle ich in der Zeile [bEinAus].Row, ob die entsprechende Spalte zwischendurch ausgeblendet werden muss. Wenn ja, steht in der jeweiligen Spalte eine 1.
Mit nachfolgendem Code kann ich die entsprechenden Spalten ein- resp. ausblenden. Die Tabelle ist in der Zwischenzeit umfangreich geworden, das heisst, es hat viele Spalten, die ein- resp. auszublenden sind. Dementsprechend erhalte ich nun an der Stelle " ThisWorkbook.Names.Add "bAusblenden", rngRefersTo " immer eine Fehlermeldung ("Index ausserhalb des gültigen Bereiches"). Ich vermute, dass der Range aus zu vielen Zellen besteht und deshalb dem Bereich "bAusblenden" nicht mehr zugewiesen werden kann.
Wie erreiche ich mit einem Workaround die gewünschte Lösung? Wer kann mir helfen?
Danke, Peter
Sub SwitcherunbenutzteSpalten()
ThisWorkbook.Activate
'Übergibt bestimmte Zelladressen in Zeile [bEinAus].Row dem benannten Bereich bEinAus,
'damit die ganzen Spalten aus- und eingeblendet werden können
Dim C As Range, rngRefersTo As Range
Dim Z As Long
Z = [bEinAus].Row
With Sheets("B")
For Each C In Range(Z & ":" & Z)
If C = 1 Then
If rngRefersTo Is Nothing Then
Set rngRefersTo = C
Else
Set rngRefersTo = Union(rngRefersTo, C)
End If
End If
Next C
ThisWorkbook.Names.Add "bAusblenden", rngRefersTo 'wahrscheinlich rngsRefersTo zu gross
End With
[bausblenden].EntireColumn.Hidden = Not [bausblenden].EntireColumn.Hidden
End Sub