使用Access for ListBox对象中的按钮打开“编辑列表项”窗口

时间:2017-08-16 01:45:02

标签: vba ms-access listbox access-vba

我的表格中有一个列表框。

Listbox

我允许用户编辑我想要的功能内容,默认功能非常适合我的需要。我知道如果你右键单击列表,你也会得到编辑列表项窗口。

Edit List Items

但我的问题是我的大多数用户都不精通Access,所以他们可能不知道右键单击打开窗口。我想这样做,所以蓝色编辑按钮将用VBA打开那个窗口,但我无法弄清楚如何用VBA打开那个窗口。

这是否可能,如果是这样,我很想知道这个电话。

1 个答案:

答案 0 :(得分:0)

您可以模拟点击编辑

Private Sub btnValueListEdit_Click()
    Me.myListBox.SetFocus
    DoCmd.RunCommand acCmdEditListItems
End Sub

但这不是推荐的!

看看Allen Browne的Add items to a Value List

  
      
  • 您可以删除其他记录中实际使用的项目。
  •   
  • 您可以更正拼写错误的项目,但不会更正已经拼写错误的项目的记录。
  •   
  • 您可以向表单添加项目,但在拆分数据库中,其他用户无法获取这些项目。因此,其他用户将具有其他名称的项目添加到其表单中,即使它们应该是相同的项目。
  •   
  • 如果您在使用其中一个新项目后回答“否”,则现在数据中的项目与列表不匹配。
  •   
  • 如果您在未分裂的数据库中回答“是”,则会引入奇怪的错误,因为多个用户会尝试修改其他人可能正在使用的对象。
  •   
  • 如果您在拆分数据库中回答“是”,则一个前端中的项目列表将不再与其他前端中的列表匹配。
  •   
  • 您的更改无论如何都不会持久:更新前端时它们会丢失。
  •   

结论

  
      
  • 使用表而不是值列表来管理查找数据。与Relational Integrity建立关系。
  •   
  • 使用这些查找表(或基于它们的查询)作为组合的RowSource。不要将值列表用于除用户永远不需要编辑的最简单选项之外的任何内容。
  •   
  • 使用Not In List事件将数据添加到简单的单字段查找中,例如类型或类别。
  •   
  • 如果您仅使用Access 2007或更高版本,则“列出项目编辑表单”属性是一种快速简便的方法,可以指定用于管理列表项的表单。
  •   
  • 要编辑任何版本的Access中的列表,或控制编辑的工作方式,请使用其他事件,例如组合的DblClick。
  •