AW: Spalte B und C automatisch ausblenden wenn leer
14.12.2018 08:08:41
Bernd
Hallo Anna,
hab mal 2 Möglichkeiten erstellt
1. Variante:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Integer
If Target.Count > 1 Then Exit Sub
If Target.Column 1 Then Exit Sub
If Target.Row = 1 Then Exit Sub
With ActiveSheet
For i = 2 To .Cells(Rows.Count, 1).End(xlUp).Row
If .Cells(i, 1).Value "" Then
If .Cells(i, 2).Value = "" Then
Rows(i).Hidden = True
ElseIf .Cells(i, 3).Value = "" Then
Rows(i).Hidden = True
Else
Rows(i).Hidden = False
End If
End If
Next i
End With
End Sub
=> durchläuft bei jeder Änderung von Spalte A und Zeile > 1 alle Zeilen der Tabelle.
2. Variante:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Integer
If Target.Count > 1 Then Exit Sub
If Target.Column 1 Then Exit Sub
If Target.Row = 1 Then Exit Sub
If Target.Offset(, 1).Value = "" Then
Rows(Target.Row).Hidden = True
ElseIf Target.Offset(, 2).Value = "" Then
Rows(Target.Row).Hidden = True
Else ' Codezeile kann theoretisch auch entfallen
Rows(Target.Row).Hidden = False ' Codezeile kann theoretisch auch entfallen
End If
End Sub
=> durchläuft bei jeder Änderung von Spalte A und Zeile > 1 nur die einzelne Zeile der Änderung.
Grüße, Bernd