ここから本文です

Sub test() Dim i As Long For i = 1 To 5 処理 End Sub

cas********さん

2015/3/221:10:26

Sub test()
Dim i As Long
For i = 1 To 5
処理

End Sub

For~Nextステートメントなんですが、繰り返し回数を可変にできるのでしょうか?
イメージとしては、繰り返し回数を1~5回の間で任意の回数を選択すると、それに応じたプログラムが動作してくれれればいいのですが。

今思いつくことは、

2回の場合
Sub test()
Dim i As Long
For i = 1 To 2

3回の場合
Sub test()
Dim i As Long
For i = 1 To 3

と回数分別にマクロを記述することなんですが、スマートではないなと思いまして。。

Sub test()
Dim i As Long
For i = 1 To 3 ←ここを可変にすることは可能なのかなと思っています。

よろしくお願いします。

閲覧数:
214
回答数:
3
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

hel********さん

2015/3/308:12:25

繰り返したい回数を入力ボックスに入力する方法として・・。

Sub Test()
Dim cnt As String, i As Integer
cnt = Application.InputBox("繰り返す回数を入力")
For i = 1 To Val(cnt)
’処理したいことをここに記述
Next i
End Sub

質問した人からのコメント

2015/3/3 19:32:07

勉強になりました。皆様ありがとうございます。

ベストアンサー以外の回答

1〜2件/2件中

並び替え:回答日時の
新しい順
|古い順

prs********さん

2015/3/302:11:11

項目は五つで☆の数を変則としました。

Sub test()
Dim temp As Variant
temp = Array(4, 1, 3, 5, 2)
Dim b, c As Integer
Dim a As Integer
c = 1
For a = 0 To 4
For b = 1 To temp(a)
Cells(b, c) = Cells(b, c) & "☆"
Next
c = c + 1
Next
End Sub

項目は五つで☆の数を変則としました。

Sub test()
Dim temp As Variant...

ich********さん

2015/3/221:14:28

testに引数をつけてはどうでしょうか?

Sub test(num as Integer)
Dim i As Long
For i = 1 To num
処理

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

あわせて知りたい

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる