2

シナリオ)7つの変数があります。labelKid1、labelKid2、...LabelKid3。セルを検索して空でないセルを見つけ、ラベルに値を入力します。labelKid1から始めて、次のラベルに移動します。

質問)これらの変数を通過するforループを使用する方法はありますか?つまり、labelKid +jなどの変数をなんとかして呼び出すことができます。jはforループの値です。これにより、ラベルをより簡単に移動できるようになります。

これで、ラベルを配列に配置し、forループを使用してインデックスを呼び出すことでこれを実行できる可能性があることを理解しましたが、上記のように実行する方法はありますか?

4

2 に答える 2

3

いいえ、VBA は可変変数をサポートしていません (PHP で呼び出されるため)。あなたが言ったように、代わりにリスト、辞書などを使用する必要があります。

于 2012-07-24T01:04:32.707 に答える
2

UserForm1.Controls("labelKid" & i)UserForm1 に関連付けられた名前で任意のフォーム コントロールを呼び出すを使用して、これを実現できます。

だからあなたはこのようなものが必要になるでしょう

Sub ControlName()
Dim i As Long
For i = 1 To 10
    UserForm1.Controls("labelKid" & i).Value = i 
Next
End Sub

お役に立てれば!

于 2013-12-10T15:35:26.420 に答える