VBA - 右键单击列表框时创建菜单列表
Posted
技术标签:
【中文标题】VBA - 右键单击列表框时创建菜单列表【英文标题】:VBA - Create a menu list when you right click a listbox 【发布时间】:2019-09-13 13:41:27 【问题描述】:当用户右键单击列表框时,我希望有一个包含两个选项的菜单。 使用该菜单,用户将对选定的数据执行一些操作,例如添加新行,更改某些列数据或删除行。我想我可以管理该代码,但我无法掌握如何创建右键单击自定义菜单。
我找不到创建此类选项的方法。有人有想法吗?
【问题讨论】:
列表框没有右键事件。您可能会创建一个自定义侦听器,但这超出了我的范围。您最好向 UF 或包含这些选项的表单添加一个或多个按钮 谢谢蒂姆,我希望有一些解决方法。 :( 【参考方案1】:这里是一些右键事件的代码:
Select ListBox item on rightclick in Word VBA
将此代码替换为您的上下文菜单代码:
Me.Caption = derivedIndex & " = " & ListBox1.List(derivedIndex)
这是弹出菜单的示例(您需要了解 Win32 API 调用的技能...) https://www.vbarchiv.net/api/api_createpopupmenu.html
【讨论】:
感谢您的输入,不幸的是,我的德语不太好,无法理解您的 Win32 API 调用。我想我将进行简单的双击,打开隐藏的编辑表单和添加按钮新行并删除选定的行。【参考方案2】:仅使用类(不使用Api或Declare函数)创建的列表框的右键菜单包含以下按钮;
增加字体大小 减小字体大小 按 A-Z 排序 删除列表 全部删除For VBA codes and sample file review this link
【讨论】:
以上是关于VBA - 右键单击列表框时创建菜单列表的主要内容,如果未能解决你的问题,请参考以下文章
单击列表框时,如何在文本框中以另一种形式从ms access 2010中的列表框中移动所选项目