I'd like to use ActiveX checkboxes to unhide/hide columns. I'll have a number of checkboxes (for this example 3) referenced to a bunch of columns. The columns will start hidden. When a checkbox is checked, the columns assigned to it will unhide. When it is unchecked, I'd like them to hide. This is simple enough, but where I get confused is adding intelligence. Here's my example:

Checkbox 1 - tied to columns C and D
Checkbox 2 - tied to columns D and E
Checkbox 3 - tied to columns E and F

Here's a step by step that describes my problem:
Step 1 - check checkbox 1 - columns C and D unhide
Step 2 - check checkbox 2 - column E unhides (D is already unhidden because of step 1)
Step 3 - uncheck checkbox 1 - column C hides (but not D, because checkbox 2 is checked)

I understand I could do this with a bunch of IF statements to check the status of other boxes when one is unchecked, but as I add checkboxes this will make the code very unwieldy and non-scalable. Is there a simpler, cleaner way to do this?

Thanks in advance.