VBA运行时错误1004两位数的范围

我的意图是select连续的其他单元格。 我的代码(我敢肯定,有一个更好的方法来完成这一步,但一次我猜):

Range("C" & row & ":C" & row + 1 & ", E" & row & ":E" & row + 1 & ", G" & row & ":G" & row + 1 & ", I" & row & ":I" & row + 1 & ", K" & row & ":K" & row + 1 & ", M" & row & ":M" & row + 1 & ", O" & row & ":O" & row + 1 & ", Q" & row & ":Q" & row + 1 & ", S" & row & ":S" & row + 1 & ", U" & row & ":U" & row + 1 & ", W" & row & ":W" & row + 1 & ", Y" & row & ":Y" & row + 1 & ", AA" & row & ":AA" & row + 1 & ", AC" & row & ":AC" & row + 1 & ", AE" & row & ":AE" & row + 1 & ", AG" & row & ":AG" & row + 1 & ", AI" & row & ":AI" & row + 1 & ", AK" & row & ":AK" & row + 1 & ", AM" & row & ":AM" & row + 1 & ", AO" & row & ":AO" & row + 1 & ", AQ" & row & ":AQ" & row + 1 & ", AS" & row & ":AS" & row + 1 & ", AU" & row & ":AU" & row + 1 & ", AW" & row & ":AW" & row + 1 & ", AY" & row & ":AY" & row + 1 & ", BA" & row & ":BA" & row + 1).Select 

我正在递增2以突出显示其他行。 当row超过10时,它返回一个错误(对象'_Global'失败的方法'范围')。我一直无法通过Googlefind任何答案。 似乎不是一个普遍的问题。 我真的很困惑,为什么它只适用于单个数字的行。 任何帮助表示赞赏。

编码|可能更容易 阅读| debugging。

 Dim ws as Worksheet Set ws = Worksheets("mySheet") 'change as needed Dim x as Integer For x = 3 to 53 Step 2 'loop from C to BA skipping 1 column in between Dim rngEveryOther as Range If rngEveryOther is Nothing Set rngEveryOther = ws.Range(ws.Cells(i,x),ws.Cells(i+1,x)) Else Set rngEveryOther = Union(rngEveryOther, ws.Range(ws.Cells(i,x),ws.Cells(i+1,x))) End If Next rngEveryOther.Select 

联盟声明将联合单元格到现有的范围(如果从代码中不明显)。