2015-11-26 29 views
0

我有一个供应商的组合框的访问表单。我在组合框旁边有一个“...”按钮控件,如果组合框是空的,它将打开一个新的供应商窗体,或者如果它被占用,它会转到选定的供应商。我的问题是,如果用户选择一条记录,然后意识到其错误,并希望添加一个新的供应商。从组合框中删除选定的记录

当删除供应商名称时,通过删除按钮或退格键,记录似乎仍然被选中。但是,'...'按钮不起作用。试图离开记录意味着我收到一个错误,说You must enter a value in the Order.supplier_ID field

有什么方法可以轻松清除选择?

我可以在没有此错误的情况下清除选择吗?允许用户远离组合框导航并选择'...'按钮

我需要VBA吗?我甚至从哪里开始?

+0

你用这样的东西吗? 'ComboBox1.Items.Remove(ComboBox1.SelectedItem)' – R3uK

+0

不,我会查看它!我在哪里放置该代码? – LiamH

+0

在你想要删除所选项目的代码流程中(你需要更改'ComboBox1'。你使用'RowSource'属性来填充你的组合框吗? – R3uK

回答

0

像这样的事情应该可以帮助您:

  1. 店所选项目的索引
  2. 它换到下一个或前一个
  3. 删除是
之前选择的项目

这里是代码:

Dim SelectedITM As Long 

With Order.supplier_ID 
    SelectedITM = .SelectedItem 
    If SelectedITM <> .ListCount - 1 Then 
     .Selected (SelectedITM + 1) 
    Else 
     .Selected (SelectedITM - 1) 
    End If 
    .Items.Remove (SelectedITM) 
End With