戻る

コンボボックスのリスト外入力処理

コンボボックスのリストにないデータ(値)を入力した場合、
コンボボックスのプロパティで「入力チェック」を「いいえ」に設定した場合、
データの入力はできますがリストにデータは反映されません。

そこで、リスト外入力のデータをリストに追加させる方法を考えます。

プロパティの「入力チェック」は「はい」に設定します。
「いいえ」に設定した場合、入力されたデータがそのまま表示されますが、リストには追加されません。

●「リスト外入力」でイベントプロシージャーを作成する

<イベントプロシージャ>

Private Sub 果樹_NotInList(NewData As String,Response As Integer)
  Dim comb As New ADODB.Connection
  Dim list As New ADODB.Recordset
  Dim Tsuika As Integer
  Response = acDataErrContinue
  Beep
  Tsuika = MsgBox("「" & NewData & "」" & "リスト以外のデータが入力されま6した。
    データを追加しますか?", vbYesNo + vbQuestion, "追加の確認")
    Select Case Tsuika
    Case vbYes
      Set comb = CurrentProject.Connection
      list.Open "T_果樹", comb, adOpenKeyset, adLockOptimistic
      list.AddNew
      list!果樹 = NewData
      list.Update
      list.Close
      comb.Close
      Me!果樹 = NewData
      Me!果樹.Requery
      Me!都道府県.SetFocus
    Case vbNo
      Me!果樹 = Null
      Me!果樹.Dropdown
    End Select
  End Sub