View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
JE McGimpsey JE McGimpsey is offline
external usenet poster
 
Posts: 4,624
Default Show/Hide Columns

Your code first hides visible columns, then unhides invisible columns.
You could try an If...Then...Else...End If structu

Private Sub Detail_Click()
' Show/Hide Detail
If Columns("B:Y").Hidden = False Then
Columns("B:Y").Hidden = True
Else
Columns("B:Y").Hidden = False
End If
Range("a1").Activate
End Sub

or you could "toggle" between hidden and not hidden:

Private Sub Detail_Click()
' Show/Hide Detail
With Columns("B:V")
.Hidden = Not .Hidden
End With
End Sub



In article ,
"StephanieH" wrote:

I want my user to be able to show or hide several columns in my worksheet.
If they are already hidden, they should unhide and vice versa. The following
will unhide hidden columns, but will not hide unhidden columns. What am I
doing wrong?

Private Sub Detail_Click()
' Show/Hide Detail

If Columns("B:Y").Hidden = False Then
Columns("B:Y").Hidden = True
Range("a1").Activate
End If

If Columns("B:Y").Hidden = True Then
Columns("B:Y").Hidden = False
Range("a1").Activate
End If

End Sub