Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim derlig As Long, lig As Long, n As Byte
derlig = Application.Match(Chr(255), [A:A])
If Intersect(Target, Range("A1:A" & derlig)) Is Nothing Then Exit Sub
Application.ScreenUpdating = False
Cancel = True
lig = Target.Row + 1
n = Len(Target)
If Target.Offset(, 1) = "-" Then
Target.Offset(, 1) = "+"
While Len(Cells(lig, 1)) > n And lig <= derlig
Rows(lig).Hidden = True
Cells(lig, 2) = "+"
lig = lig + 1
Wend
Else
Target.Offset(, 1) = "-"
While Len(Cells(lig, 1)) > n And lig <= derlig
If Len(Cells(lig, 1)) = n + 1 Then Rows(lig).Hidden = False
lig = lig + 1
Wend
End If
End Sub