以下のように、前回と同じテーブルを使う。
「人」テーブルの「性別id」は、前回最後に作ったクエリを元にルックアップの設定をしてある。
データの値だけちょっと変えておく。性別コードを二桁にした。
ここで例えば、「人」テーブルを元に以下のようなコンボボックスを含むフォームを作成したとする。コンボボックスのコントロールソースは「性別id」。
繰り返すが「性別id」は、クエリを元にルックアップの設定がしてある。
test ボタンを押すと VB のイミディエイトウィンドウにコンボボックスの値が出力されるようにした。コードは次の通り。
Private Sub btnTest_Click() ' Value プロパティ Debug.Print "性別id.Value: " & 性別id.Value ' Text プロパティ 性別id.SetFocus Debug.Print "性別id.Text: " & 性別id.Text End Sub
結果、次のような出力が得られた。
性別id.Value: 4 性別id.Text: 09
Text プロパティを取得する前にフォーカスを与えているのは、
コントロールの Text プロパティを取得または設定するには、コントロールにフォーカスを与えておく必要があります。フォーカスを与えないと、エラーが発生します。
(ヘルプの「Text プロパティ」より)
上記の結果を見ると、Text プロパティはコンボボックスに表示された値そのものを取得している。それに対して、Value プロパティは「データ > コントロールソース」である「性別id」の値が表示された。このような違いが生じたのは、コンボボックスの「データ > 集合ソース」にルックアップの設定で使っているクエリが設定されているためということか。
0コメント:
コメントを投稿