• ベストアンサー

VBAのプロパティ設定の仕方

初心者ですいません。 オブジェクトのプロパティを変数を使って設定できるでしょうか? 例えば、こんなプログラムを書きたいのですが、 dim i as string i = "TextBox1" i.Value = "こんにちは" 実際は TextBox1.Value = "こんにちは" で、できますが、あえて上のような式で出来るでしょうか? 教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.3

ユーザーフォームのコントロールは、Controlsコレクションによって管理されています。 コレクションによって管理されているものは次の方法で文字列でアクセスできます。 dim i as string i = "TextBox1" Controls(i).Value = "こんにちは"

aioi_k
質問者

お礼

上手くいきました。回答ありがとうございまいた。

その他の回答 (2)

  • mfuku
  • ベストアンサー率50% (173/345)
回答No.2

下記のように、オブジェクト変数を使います。 Dim txt As TextBox Set txt = TextBox1 txt.Text = "こんにちは" 【注意】 オブジェクト変数への代入はSetステートメントを使います。 テキストボックスにValueプロパティはありません。

aioi_k
質問者

補足

回答ありがとうございました。 確認したところ、set文のところで「型が一致しない」のエラーになってしまいます。

  • zerosix
  • ベストアンサー率31% (47/149)
回答No.1

急いでいるようなので、回答だけ。 「できません」 なぜなら iは文字列型です。 テキストボックス型の変数を宣言してあげなくては行けません そもそも、 【 i = "TextBox1" i.Value = "こんにちは" 】と 【TextBox1.Value = "こんにちは" 】は 意味が違いますよ。^_^;

aioi_k
質問者

補足

十分に承知した上で、質問しています。

関連するQ&A