循环代码/跳过行
我有一个VBA代码中的以下内容:
For i = 1 To 5 myArray(i) = i + 0 Next i For i = 6 To 8 myArray(i) = i + 1 Next i For i = 9 To 14 myArray(i) = i + 2 Next i
…等等
这样做肯定有更好的办法,但是对于我来说,我想不出一个。 谁能帮忙? 也许与Select..Case语法的东西?
编辑:这些实际上应该是公司各个地区的各个子部门。 我“跳过”的行自动计算所述区域的总数。
由于你跳过的行是不统一的,从它的声音可能会改变你可能不想在Select
语句的几行硬编码它们。 将它们logging在Array
可能更容易:
'Create an Array of Rows to Skip rowsToSkip = Array(6, 9) 'Loop over all data For i = 1 To 14 skipcount = 0 'For each skip row we have passed add one to the skipcount For Each rownum In rowsToSkip If i >= rownum Then skipcount = skipcount + 1 End If Next rownum myArray(i) = i + skipcount Next i
For i = 1 to 14 select case i case 1 to 5 myArray(i) = i + 0 case 6 to 8 myArray(i) = i + 1 case 9 to 14 myArray(i) = i + 2 end select Next i