「vba for文 0~マイナス値まで」
といった検索キーワードでアクセスがありました。
VBAで、初期値が0(ゼロ)最終値が負の値のFor~Nextループを回すには、どのようなコードを書けばいいのか調べていた方による検索でしょうか。
拙著『いちばんやさしいExcel VBAの教本』の「Lesson 43 For~Next文の繰り返し条件を使いこなしましょう」でも解説しているとおり、Stepの直後に書く値をマイナスの値にすれば、「0~マイナス値まで」For~Nextループを回せます。
[スポンサードリンク]
初期値が0で最終値がマイナス値のFor文のサンプル
以下のSubプロシージャを実行すると「0」から「-3」までの整数が順番にメッセージボックスに表示されます。
Sub 初期値が0で最終値がマイナス値のFor文()
Dim i As Long
For i = 0 To -3 Step -1
MsgBox i
Next i
End Sub
Dim i As Long
For i = 0 To -3 Step -1
MsgBox i
Next i
End Sub
増分値に「-2」を指定するサンプル
増分値は「-1」ではない値も指定可能です。
例えば、先ほどのSubプロシージャの最終値と増分値を変更して
For i = 0 To -5 Step -2
とした場合には、
0
-2
-4
がメッセージボックスに表示されます。
0から-3まで順番に表示するには
VBAのFor~Next文を使って、例えば「0」から「-3」までをメッセージボックスに表示したいということであれば、以下のようなコードでもOKです。
Dim i As Long
For i = 0 To 3
MsgBox -i
Next i
For i = 0 To 3
MsgBox -i
Next i
For~Next文の構造は一般的な形のままで、カウンター変数iの値をループ処理の内部でマイナスに反転させています。
[スポンサードリンク]
- Newer:Excel VBAでWordの表の個数を取得する
- Older:VBAでグラフの軸の見た目(書式)を変更する
Home » エクセルマクロ・Excel VBAの使い方 » VBAのFor文で0(ゼロ)からマイナス値までを