- 締切済み
全ての変数を一気にリセットする方法はありますか?
全ての変数を一気にリセットする方法はありますか? Sub test() Dim i As Integer Dim int1 As Integer Dim int2 As Integer int1 = 1 int2 = 2 For i = 1 To 100 'プロシージャー int1 = 0 'リセット int2 = 0 'リセット Next End Sub みたいなコードがあり、 ループが終わる度に変数をリセットしたい場合 int1 = 0 'リセット int2 = 0 'リセット のように一つ一つ変数に値を入れてリセットするしかないですか? 例のコードは二つしか変数が有りますが 実際100個くらいの変数が有る場合も、 一個一個リセットするしかないのでしょうか? 理想としては、VBAを中断したら全ての変数がリセットされますが それと同じようなコードが有れば、楽だなと思います。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- don_go
- ベストアンサー率31% (336/1059)
Sub test() Dim i As Integer7 Dim intArray(2) As Integer intArray(1) = 1 intArray(2) = 2 For i = 1 To 100 'プロシージャー 'リセット Erase intArray ReDim intArray(2) Next End Sub
- RandenSai
- ベストアンサー率54% (305/561)
グローバル変数をまとめてゼロクリアしたければ、それ専用の関数作ればいいじゃないとか思うんですが、そういう問題ではない? 次に同じ変数を別の場所で使おうとしたら、どのみち何らかの値を入れなきゃいけないわけで、それを省くのは原理的に無理ってことになるのでは… ループ自体を関数にして、ループ内はローカル変数で処理するとかじゃダメなんですかね。