- 締切済み
VBでの変数使用
VB初心者ですが、よろしくお願いします。 VBAにて行っていた以下の内容をVBにて行いたいのですが上手くいかずに行き詰ってしましました。 ネットで色々と検索したのですが、適切なサンプルが無く。。。 ご指南の程、よろしくお願いします。 Private Sub 追加() i = 3 Me.Controls("Combo" & CStr(i)).AddItem "選択" End Sub
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- OMEGAT
- ベストアンサー率70% (455/642)
該当フォームのForm_Loadあたりでされているのでしょうか? 「フォームの作成中にエラーが発生しました。詳細については、Exception.InnerException を参照してください。エラー: オブジェクト参照がオブジェクト インスタンスに設定されていません。」 このエラーはどの行で出ているのでしょうか? CType(Me.Controls("comboBox" & CStr(i)), ComboBox).Items.Add("選択") の行であれば、やはりコントロールが存在していないように思いますので、この行をコメントアウトして実行してみるとどうなりますか。
- OMEGAT
- ベストアンサー率70% (455/642)
指定した名前のコントロールは存在していますか? i = 3 CType(Me.Controls("comboBox" & CStr(i)), ComboBox).Items.Add("選択") この場合、comboBox3という名前のコントロールが必要です。 i = 3 CType(Me.Controls("Combo" & CStr(i)), ComboBox).Items.Add("選択") と書けば、Combo3という名前のコントロールが必要です。
- OMEGAT
- ベストアンサー率70% (455/642)
VB6ならそのまま動きそうですが、VB.NETであれば CType(Me.Controls("comboBox" & CStr(i)), ComboBox).Items.Add("選択") のようにコントロールをコンボボックスに型変換し、Items.Addすれば動くと思います。
お礼
ご回答ありがとうございました。 文法でのエラーは出なかったのですが、実行時にエラーが出てしまいました。 イミデントウィンドウに以下のメッセージが出ております。 'System.NullReferenceException' の初回例外が Master Win.exe で発生しました。 原因分かられますか?
お礼
早々のご回答ありがとうございました。 ご指摘頂いた点は問題ないです。 また、以下のメッセージが書かれたウィンドウも立ち上がってます。 フォームの作成中にエラーが発生しました。詳細については、Exception.InnerException を参照してください。エラー: オブジェクト参照がオブジェクト インスタンスに設定されていません。 ご指南頂ければ幸いです。