你能否将数组从Sub传递到表单中?

时间:2015-08-14 13:13:09

标签: vba ms-access access-vba

我写了一些代码:

  • 允许用户导入文本文件或电子表格作为输入源。

  • 提示用户选择保存相关数据的字段。

  • 执行程序操作(基本上检查网站上的某些内容,然后在满足条件时更新网站)。

我必须“躲避”的是提示在哪里找到数据。我最初创建了一个简单的数组来从输入源捕获字段名称,但后来我遇到了如何将其转换为用户表单和组合框的绊脚石。

我最终决定创建另一个临时表而不是将字段名称插入到数组中,而是将它们保存到记录集中,然后可以通过创建另一个记录集并从其中查询并从中删除所有内容来从Userform访问该记录集。记录集与所选记录集不同。

虽然它有效,但从外面你不会知道它在做什么,因为所涉及的数据量非常小,它非常快。

我只是意识到这可能是一个更好的解决方案,我宁愿问这个问题并在我的脑海里清醒时了解我的错误/疏忽。

致以最诚挚的问候,

杰夫。

2 个答案:

答案 0 :(得分:1)

如果我理解正确,您希望在组合框中显示表中的字段名称。如果这是正确的,只需设置行来源类型'组合框的属性为'字段列表'并将行源设置为表格。

答案 1 :(得分:0)

组合框有一个属性"行源类型"在DATA选项卡上。默认情况下是isis表查询。

但是,您可以将其设置为"值列表",它接受要在组合框中显示的值字符串。

所以如果设置为" 1,2,3,4,5,6"你会得到一个显示值的列列表。

您可能需要调整的其他属性包括:列宽,列数和绑定列。

这是一种使用简短的值列表填充组合的简单方法。

如果需要,请不要忘记使用requery / refresh方法。

不使用子表单而是将其替换为类似于子表单的列表框,否则您必须使用临时表执行的操作。

可以使用与组合框相同的方式填充列表框。