
No.2
- 回答日時:
こんにちは
想定できる原因は、すでに回答にありますが、変数 k の使い方に問題があるのではないでしょうか。(ループに問題があるのではない)
ご自身でkの値をモニターしてkに11が代入されるタイミングを確認するのはいかがでしょう。
方法はいくつかありますが、
ウォッチウィンドウを表示してkを設定すれば変化がわかります。
http://excelvba.pc-users.net/fol8/8_3.html
ちなみにループ内でkの値を変更しても変数 i が10に達するとforを抜けると思います。抜けた時(Next iの下)で変数 i は、11ですが。
変数の使用方法としては、改善が必要と思います。(例えが上手くないだけかも知れませんが)
わかり易く変数 k を流用しないとか、ロジックを見直すとかです。
n = 3
k = 10
変数の初期値を設定する目的であれば、kは定数にするべきと思います。
Const k = 10
更に付け加えると、変数にする意味が無いのではと思います。
変数を使用する場合は、
例:k=Cells(Rows.Count, 1).End(xlUp).Row などなど
範囲(回数)が確定していない時です。例は処理前のA列(値のある)最終行
処理によりループ範囲を変えたい場合は、
for nextでなく do loop を使用する事も考えてみてください。
例えば、条件を満たすまでループさせたいのなら、
Do While 条件式 や Do Until 条件式 で
条件式を満たすまで繰り返す処理
Loop
とする方法があります。(注意:条件式を満たさなければ無限ループ)
ループ内の処理がわかりませんが、カウント変数 i を使用した方が良いのでは?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
画面を強制的に再描画させる方法
-
VBAで3秒だけ時間を止めたい
-
CSVファイルの特定の行だけを読...
-
null 参照の例外が実行時に発生...
-
流れ図(フローチャート)が分か...
-
エクセルの当番表を作っていま...
-
Javaの質問です。 この問題の答...
-
乱数の桁数指定、または範囲指定。
-
Escキーを押すと、中断する時と...
-
Javaでゲーム
-
UWSCに制限時間を付けたいです
-
vb.netです。2次元配列の要素を...
-
「VC++6」ウィンドウの再描画
-
データベースをEOFまでループさ...
-
ループを回すという意味は何で...
-
VBA Dir関数でファイルをループ...
-
pythonでファイルのコメント行...
-
VB2010でCSVファイルの読み込み
-
objective-cの多重ループbreak
-
.htaccessがループしてる?それ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
画面を強制的に再描画させる方法
-
UWSCの終了の仕方
-
CSVファイルの特定の行だけを読...
-
範囲指定したセルを1つずつ飛...
-
UWSCに制限時間を付けたいです
-
Escキーを押すと、中断する時と...
-
乱数の桁数指定、または範囲指定。
-
VBA for i=1 to lastrow
-
流れ図(フローチャート)が分か...
-
DOSコマンドのループ内のTIMEコ...
-
pythonでファイルのコメント行...
-
素数表について。
-
VBAでの一時停止と再開の方法
-
「偶数・奇数の和」のフローチ...
-
DoEventsが必要な理由について
-
vb.netです。2次元配列の要素を...
-
Do whileでExitせず、ループの...
-
ループフリー
-
エクセルの当番表を作っていま...
-
VBAで3秒だけ時間を止めたい
おすすめ情報