2017-05-27 127 views
-3

使用VBA我想選擇一個特定的範圍,例如B7:J7,做一些事情(我已經有這個工作),然後在下一行中選擇相同的列,B8:J8並且執行相同的操作,然後通過設置的行範圍循環到下一行等。完整的範圍將是像B7:J40。這似乎很容易,但我沒有得到任何地方。由於循環遍歷逐行的範圍

回答

1
Dim rowIndex as Long 

for rowIndex = 7 to 40 
    Sheet1.Range("B" & rowIndex & ":J" & rowIndex) 
next col 

這將給你 B7:J7 B8:J8 B9:J9 ... B40:J40

+0

命名約定必須是程序員友好的。您似乎循環行,但名稱爲「col」。我建議你將它改爲'row' –

+0

是的,你是正確的,因爲col是指所使用的命名可能暗示的行而不是列 – gr8tech

1

這裏是一個工作代碼/言自明的例子。根據您的需求修改它。

Sub loops() 
Dim rownum As Long 
'looping rows 7 to 40 
For rownum = 7 To 40 
    'Assuming you want to sum the range and put the output in K7, K8, K9 and so on... 
    Range("K" & rownum) = WorksheetFunction.sum(Range("B" & rownum & ":j" & rownum)) 
Next rownum 
End Sub