Option Explicit
Sub test()
SelectAlternateColumns 2, 40, 3
End Sub
Sub SelectAlternateColumns(FirstColumn As Integer, _
LastColumn As Integer, Spacing As Integer)
Dim rng As Range
Dim i As Integer
Set rng = Columns(FirstColumn)
For i = FirstColumn To LastColumn Step Spacing
Set rng = Union(rng, Columns(i))
Next i
rng.Select
End Sub