intRow = Range("B6") .End(xlDown) .Row
  ' 最下行番号を調べてintRowに代入する。

For i = 6 To intRow
  ' 最終値を intRow を使用している。

(注意) 初期値も最終値も For を一度実行すると、
   変更したり、加算したりすることはできない。
   但し、最初なら For i = 1 + N To intRow +10の
   様に加算はできる。
行数が可変の場合に対応したプログラム
積算結果
積算プログラム
この例題は、B6からB19にある数値にD5の積算したい時に
手計算では面倒なので、For Nextを使用する。
D5は基準値として積算したい数値を入力する。
C列にその積算値が記入される。合計値はC5に記入される。
合計値だけを算出しても良いが、個別の積算値が無いと、
正しい結果かどうか確認ができないので記入した。

この場合B列が6行目から始まってB19までデータがあるので
i = 6 To 19 になる。
積算値はNに代入される。
Totalは加算されてゆくのでTotal = Total + N になる。
For Nextの書き方
For i = 1 To 10

Next

For Next関数は、上の構文では For から Next までを、i が 10 になるまでその間のプログラムを実行する。
Next に達すると、For に戻って i に 1 を加算する。
i の初期値は任意に設定して良い。この場合は最終値を10にしているが、この数値も任意に設定して良い。

(例題)
 
基本的なマクロの習得
For Nextの使い方


実際に使っているシステムの内容で解説
  EXCEL VBA 講座