たとえば、配列がある場合:
DeviceArray = Array("Sw","Cap","Gen","Reg","Tr","Br")
そして、すべてを 0 などの値に初期化したいと考えています。これは、代わりに配列内の値が変数名として扱われるように for ループを記述して、変数値を間接的に変更できるようにすることと同じです。
For i = 0 to ubound(DeviceArray)
DeviceArray(i) = 0
Next i
コードを実行した後、変数: Sw、Cap、Gen、Reg、Tr、および Br をすべて 0 に設定する必要があります。
DeviceArray のすべての要素が 0 に変更され、最初に配置された文字列が格納されなくなるのに対して。
したがって、DeviceArray は変更されずに値を保存する必要があります("Sw","Cap","Gen","Reg","Tr","Br")
私がやろうとしていることを明確に説明してくれることを願っています。私はこれをやろうとしているので、入力する必要はありません:
Sw = 0
Cap = 0
Gen = 0
Reg = 0
Tr = 0
Br = 0
マクロ全体で常に異なる値に再初期化する必要がある変数の長いリストがあるためです。
たとえばDeviceArray(0) = Sw
、VBA マクロにDeviceArray(0)
変数の名前として認識させて、直接呼び出さずSw
に変数の値を変更できるようにします。Sw