The following code works..sorta. I can see that it's hiding the columns I want/are blank but then it immediately unhides them. What I want is when I press the button once, it hides them and then press it again, unhides them. Any idea where I went wrong?

Sub ToggleButton1_Click()
If ToggleButton1.Value = True Then

Dim i As Long
    
For i = 2 To 12
    If Sheets("Comments").Columns(i).Rows(1).End(xlDown).Value = "" Then
    Columns(i).EntireColumn.Hidden = True
End If
    Next i
For i = 2 To 12
    Columns(i).EntireColumn.Hidden = False
    Next i

If ToggleButton1.Caption = "Hide Blank Columns" Then
        ToggleButton1.Caption = "Show All"
    Else
        ToggleButton1.Caption = "Hide Blank Columns"
    End If
    End If
End Sub