• 締切済み

全ての変数を一気にリセットする方法はありますか?

全ての変数を一気にリセットする方法はありますか? 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を中断したら全ての変数がリセットされますが それと同じようなコードが有れば、楽だなと思います。

みんなの回答

  • don_go
  • ベストアンサー率31% (336/1059)
回答No.2

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)
回答No.1

グローバル変数をまとめてゼロクリアしたければ、それ専用の関数作ればいいじゃないとか思うんですが、そういう問題ではない? 次に同じ変数を別の場所で使おうとしたら、どのみち何らかの値を入れなきゃいけないわけで、それを省くのは原理的に無理ってことになるのでは… ループ自体を関数にして、ループ内はローカル変数で処理するとかじゃダメなんですかね。

関連するQ&A