在vba中通过内置对话框创build一个stringselect器对话框?

(问题的答案是否仍然有用,它们只是不解决问题的答案,不,没有内置的,你必须为自己实现对话…)

在VBA中,(ms-word或ms-excel,但似乎是一个通用的操作)是否有任何方法可以简单地提供一个集合到一个内置的对话框,以提示用户从值列表中select一个值?

我不能相信没有一个内置的方法来做到这一点,它似乎是一个这样的通用操作,可以编码一次,每个人都会重新使用它。 我当然可以手工编写代码,但为什么麻烦,如果它已经在vba图书馆的某处。

我已经search了一个解决scheme,但是看起来标准答案是手工编码 。

我的aproach将创build一个窗体,添加一个列表框,确定,取消和ShowModal属性。 要使用它,首先根据你所需要的设置ListBox RowSource: https : //msdn.microsoft.com/en-us/library/office/ff196460.aspx

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

是的,没有这样的事情。

手工编写代码并将其作为VBA“工具箱”的一部分 – 使自己成为其他VBA项目可以引用的插件,因此您可以重复使用代码,而无需每次重写代码。

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

VBA标准库相当有限,除了MsgBox之外,内置的UI并不多。 就是这样。