投稿日 | : 2003/10/30(Thu) 00:36 |
投稿者 | : 魔界の仮面弁士 |
Eメール | : |
URL | : |
タイトル | : Re: Access風コンボボックス |
> Accessにあるような カラム指定はできないのでしょうか?
残念ながら、そういう機能は用意されていません。
> Accessの場合IDを見えなくしつつ、必要な時にカラムを指定して
> IDを取得できたのですが、VBではできないのでしょうか?
一覧には名称を表示し、値としてはIDを取得したいという場合には、
『DataComboコントロール』を使うという方法があります。
また、IDが整数の場合には、標準ComboBoxの「ItemDataプロパティ」を使う事もできます。
Option Explicit
Private Sub Combo1_Click()
MsgBox Combo1.ItemData(Combo1.ListIndex)
End Sub
Private Sub Form_Load()
With Combo1
.List(0) = "ハト"
.ItemData(0) = 1
.List(1) = "キジ"
.ItemData(1) = 2
.List(2) = "スズメ"
.ItemData(2) = 3
.List(3) = "ハト"
.ItemData(3) = 4
End With
End Sub
IDが整数以外(たとえば文字列)の場合にも対応させたいのであれば、
IDの一覧を配列かCollectionとして管理し、それらを
ComboBoxのListIndexにて管理するようにすれば OK でしょう。