2016-08-12 18 views
1

Ms-Accessでプログラムでバインドされたコンボボックスの行ソースを埋めるようにしています。しかし、私はフォームを見ると数字のどれも表示されません。Ms-accessでバインドされたコンボボックスの行ソースを変更する

Private Sub Form_Open(Cancel As Integer) 
    Me.cmbErrorType.RowSourceType = "Value List" 
    Me.cmbErrorType.RowSource = "1;2;3;4;5;6" 
End Sub 

フォームが開くと、コンボボックスがクリックされ、ドロップダウンメニューに何も表示されません。

私が知る限り、行ソースはコンボボックス内の項目を構築するために使用されますが、これはなぜ起こっているのですか?

+0

このエラーは再現できません。あなたのコードを試して、私のためにうまく動作します。 –

+0

有界コンボボックスで試しましたか? –

+0

はい、コンボを表にバインドし、Form openでコードを使用した場合、番号が1〜6の「値リスト」に変更されました。 –

答えて

1

状況を理解できれば、コンボボックスとしての表示コントロールを持つテーブルのフィールドのlookupプロパティを使用しています。

enter image description here

あなたはForm.ComboBoxからCombo BoxとしてDisplay Controlでフィールドをバインド場合は、ドロップダウンリストを表示しようとすると、それは何とかrowsourceプロパティをオーバーライドします。リストを表示するには、次のいずれかは、あなたのField Properties

[データベース] .TableDefs( "テーブル名")。フィールド( "フィールド")。プロパティ( "DisplayControlに")= acTextBox

に表示制御を変更する必要があります

または

最初の場所でテーブルを設計する際にテキストボックスにDisplayControlにプロパティを保管してください。

またはフィールド Source`プロパティを変更

[データベース] .TableDefs( "テーブル名")フィールド( "フィールド")のプロパティ( "値集合ソース")=「1; 2; 3; 4; 5; 6 "

+0

あなたの答えは理にかなっていません - 実際に動作するコードを表示していますか?これはコンパイルされません。 – dbmitch

+0

あなたの右は、元の投稿コメントスレッドからコメントを追加していますが、文字制限のために私。とにかく、私はケースについてより明確にするために答えを更新しました。 – winghei

関連する問題