0

我有一张表,它查找一个数据库,该数据库具有指向某个代码的所有可用图像的路径。我想要做的是,当用户在 Excel 电子表格中输入代码时,它会在同一行的表格右侧创建一个按钮(很简单),然后单击该按钮会弹出用户表单。在这个用户表单上,我想列出数据库中与该代码匹配的所有图像。有些代码可能有 1 个图像,有些代码可能有 5 个。我还希望这些代码中的每一个都标记为 1 到 x(x 是最终图像)。

一旦我有了它,我希望能够让用户单击一个或多个图像以将它们添加到 excel 工作表中(通过数字参考,所以如果用户单击 1、3 和 4,我希望它输入“1, 3, 4" 在代码旁边的单元格中)。或者我可以让他们单击取消并手动输入数字。

我想要的可能吗?我该怎么办?我对 VBA 中的用户表单的经验绝对为零,但我真的很想看看他们能做什么。

4

2 回答 2

3

要回答您的问题:

是的,这是可能的。即使从 VBA 和 UserForms 的角度来看也非常简单。

我会通过创建一个 UserForm 并向其添加控件,特别Image是 、CheckBoxCommandButton控件来实现它。一旦您对手动添加它们有了感觉,您就可以编写一些相当基本的代码来动态地将它们添加到 UserForm 并为它们分配事件处理程序以处理您想要的用户交互。作为提示:双击用户窗体上的控件将为该控件的默认事件生成一个处理程序,并将您带到该用户窗体的代码隐藏页面。

在此处输入图像描述

这个问题对以编程方式向用户窗体添加控件提供了一些帮助。

于 2013-08-22T14:46:40.100 回答
1

Ben,如果你有时间玩一下,我认为这是值得追求的。您必须设置用户表单。这并不难,但如果你对它没有什么经验,你会稍微熟悉一下。

我建议从您的电子表格的副本开始,并在其上使用用户表单。在 VBA 编辑器中,转到插入、用户窗体。可用的控件将在工具箱窗口中弹出,如果您按 F4,您将看到您单击的内容的属性。要查看这些属性的描述,您可以从 VBA 编辑器中获取帮助并打开目录。通过“Visual Basic for Applications Language Reference”、“Microsoft Forms Visual Basic Reference”、“Reference”、“Properties”向下钻取左侧的 TOC。这将为表单的每个部分提供可用属性的描述(即“隐藏”用于您要放置在行末尾的按钮)。

对于单击图像,建议将每个图像的描述(或只是图像名称)放在列表​​框中,以便用户选择。

excel-spreadsheet.com上可以找到一个很好的入门参考。当然还有其他多个免费网站和帮助。

于 2013-08-22T14:48:38.913 回答