This will hide all even columns:
Sub hiiddee()
Dim i As Long
Application.ScreenUpdating = False
For i = 16384 To 2 Step -2
Cells(1, i).EntireColumn.Hidden = True
Next i
Application.ScreenUpdating = True
End Sub

EDIT#1:
This is an adaptation of BrandonBarney's idea. It assumes that the column headers of the columns to be hidden/unhidden contain the string Old:
Sub BrandonsIdea()
Dim i As Long, KolKount As Long, r As Range
With ActiveSheet.UsedRange
KolKount = .Columns.Count + .Column - 1
End With
For i = 1 To KolKount
With Cells(1, i)
If InStr(1, .Value, "Old") > 0 Then
.EntireColumn.Hidden = Not .EntireColumn.Hidden
End If
End With
Next i
End Sub
Each time it is run, it will toggle hidden/unhidden.
EDIT#2 General Instructions:
Macros are very easy to install and use:
- ALT-F11 brings up the VBE window
- ALT-I
ALT-M opens a fresh module
- paste the stuff in and close the VBE window
If you save the workbook, the macro will be saved with it.
If you are using a version of Excel later then 2003, you must save
the file as .xlsm rather than .xlsx
To remove the macro:
- bring up the VBE window as above
- clear the code out
- close the VBE window
To use the macro from Excel:
- ALT-F8
- Select the macro
- Touch RUN
To learn more about macros in general, see:
http://www.mvps.org/dmcritchie/excel/getstarted.htm
and
http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx
Macros must be enabled for this to work!
EDIT#3:
This version will loop over all worksheets:
Sub BrandonsIdea_2_The_Sequel()
Dim i As Long, KolKount As Long, r As Range
Dim sh As Worksheet
For Each sh In Sheets
With sh.UsedRange
KolKount = .Columns.Count + .Column - 1
End With
For i = 1 To KolKount
With sh.Cells(1, i)
If InStr(1, .Value, "Old") > 0 Then
.EntireColumn.Hidden = Not .EntireColumn.Hidden
End If
End With
Next i
Next sh
End Sub