Toggle button that will hide/unhide columns within a range I have the below toggle button sub that works;

Private Sub Toggle_Unused_Click()
    Dim xAddress As String
    xAddress = "DR:FI"

Call KeyOpen 'unprotects the sheet
If Toggle_Unused.Value Then
    Application.ActiveSheet.Columns(xAddress).Hidden = True
    'This returns a value to my notes tab.
    ActiveWorkbook.Sheets("Notes").Cells(5, 11).Value = "Hidden"
Else
    Application.ActiveSheet.Columns(xAddress).Hidden = False
    'This returns a value to my notes tab.
    ActiveWorkbook.Sheets("Notes").Cells(5, 11).Value = "Visible"
End If
'This will record how many times the button has been used.
     ActiveWorkbook.Sheets("Notes").Cells(9, 8).Value = _
     ActiveWorkbook.Sheets("Notes").Cells(9, 8).Value + 1
Call KeyLock 'protects the sheet
End Sub


Then I updated the code to look like this-

Private Sub Toggle_Unused_Click() 
    Application.ScreenUpdating = False
    'This will unprotect the sheet
    Call ActiveWorkbook.Sheets("Notes").All_Sheets_UnProtect("Notes")

    If Toggle_Unused.Value Then
        Application.ActiveSheet.Range("NAMED_RANGE").Columns.Hidden = True
        'This will return a value to my notes tab.
        ActiveWorkbook.Sheets("Notes").Cells(5, 11).Value = "Hidden"
    Else
        Application.ActiveSheet.Range("NAMED_RANGE").Columns.Hidden = False
        'This will return a value to my notes tab.
        ActiveWorkbook.Sheets("Notes").Cells(5, 11).Value = "Visible"
    End If
    'This will track how many times the button has been used.
    ActiveWorkbook.Sheets("Notes").Cells(9, 8).Value = _
    ActiveWorkbook.Sheets("Notes").Cells(9, 8).Value + 1
    'This will protect the sheet
    Call ActiveWorkbook.Sheets("Notes").All_Sheets_Protect ("Notes")
    Application.ScreenUpdating = True
    'This will close the user form.
    Control_Buttons.Hide

End Sub


I have updated to use a named range because my sheet keeps growing with new columns and I am trying to limit how many declared columns I have in my code. I have four of these in a user form that each toggle a different section of sheet(Master).
You use ActiveWorkbook.Sheets("Notes") 5 times, throw that into a variable or use CodeName property - View Properties window (F4) and the (Name) field can be used as the worksheet name. This way you can avoid Sheets("mySheet") and instead just use mySheet.

You don't need to Call subs, it's obsolete. Instead just use Sub argument, argument

As far as troubleshooting the second, that's not really on topic here because it's not working. But what is -

Call ActiveWorkbook.Sheets("Notes").All_Sheets_UnProtect("Notes")


You were using

Application.ActiveSheet.Columns(xAddress).Hidden


and then changed to

Range("NAMED_RANGE").Columns.Hidden 


It works for me. If your sheet is changing, it might fail because you don't specify the sheet.