通过内置对话框从vba中的集合创建字符串选择器对话框?

时间:2016-11-08 18:26:37

标签: excel vba ms-word dialog built-in

(回答NO的问题仍然有用;它们不是解决问题的方法。答案说,不,没有内置,你必须为自己实现对话......)< / p>

在VBA中,(ms-word或ms-excel,但看起来像是一个通用操作)有什么方法可以简单地为内置对话框提供一个集合,以提示用户从中选择一个值。价值清单?

我无法相信没有内置的方法可以做到这一点,它似乎是一个可以编码一次的通用操作,每个人都会重复使用它。我当然可以手工编写代码,但如果它已经在某个地方的vba库中,为什么还要烦恼呢。

我已经搜索了一个解决方案,但似乎标准答案是hand code it

2 个答案:

答案 0 :(得分:1)

我的方法是创建一个Form,添加一个ListBox,Ok,Cancel和ShowModal属性。 要使用它,首先根据您的需要设置ListBox RowSource: https://msdn.microsoft.com/en-us/library/office/ff196460.aspx

然后使其可见,管理确定/取消,然后使用ItemsSelect属性(可以进行多选): https://msdn.microsoft.com/en-us/library/office/ff823015.aspx

答案 1 :(得分:1)

是的,没有这样的事情。

对其进行手工编码,并将其作为VBA“工具箱”的一部分保留 - 使自己成为其他VBA项目可以引用的插件,这样您就可以重复使用代码而无需每次都重写它。

然后从主机文档中导出代码模块,将它们上传到GitHub存储库,并与全世界共享您的解决方案,以便下一个查找它的人不需要再从头开始实现它。

VBA标准库相当有限,除了MsgBox之外,内置UI方面的可用性也不多。就是这样。