• ベストアンサー

ExcelVBA  For・・・Next

今年に入ってからExcelVBAを勉強し始めました For・・・Nextについて疑問があります 例えば下記のような Sub aa() Dim i As Integer For i = 1 To 10 Next ActiveCell.Value = i End Sub 上記を実行するとアクティブセルは[11]になります 普通に考えると[10]だと思うのですが? なぜでしょうか? お願いします

質問者が選んだベストアンサー

  • ベストアンサー
  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.1

類似のQ&Aがあります。 http://oshiete1.goo.ne.jp/qa896013.html 自らを振り返ってみると、for~nextの外で、iを使おうと思った事はなかったですね。

mentaru
質問者

お礼

過去に同じような質問があったのですね ありがとうございました

その他の回答 (1)

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.2

>For i = 1 To 10 「iが10になったら抜ける」のではなく、「10よりも大きくなったら」ループを抜けるので、i=11で正しいのです。 「For i = 1 To 10 Step 2」なら、12になります。

mentaru
質問者

お礼

そうなんですね 抜けた値ですね 納得しました ありがとうございました