访问/ VBA中的数字选择器

时间:2015-10-08 15:01:13

标签: vba listbox ms-access-2007

我正在尝试在MS Access 2007中将一个数字选择器放在一个表单中。这是我想要做的一个例子:

enter image description here

我在默认的表单控件中找不到这个,并尝试使用列表框自己制作一个。列表框可以修改为与上面的数字选择器一样,但箭头只会更改列表的视图,而不会更改实际选择(即值)。例如,使用列表框,如果我的范围从1到3,默认值为1 - 当我通过箭头将其更改为2时,列表框的值不会更改,并且仍然是一个。

有人知道如何在Access中获取数字选择器吗?

1 个答案:

答案 0 :(得分:2)

因此,您希望创建一个数字列表,并允许用户使用向上和向下箭头更改显示的值(并存储为控件的值),以便他们选择列表中的下一个或上一个。

我建议创建一个文本框和两个按钮。使用值列表填充数组。单击按钮时,它将:

一个。在数组中找到已经输入到文本框中的任何值的位置(例如,从数据库加载)

B中。从数组中获取下一个或上一个项目。

根据需要填充数组(可能在打开表单时)。

如果您只需要允许用户输入整数(即数字微调器),您可以执行以下操作:

使用(锁定)文本框和两个按钮创建一个。只需添加一个文本框(将其命名为txtValue)和两个按钮(btnUp和btnDown),然后将这样的代码添加到这些按钮的Click事件中:

Private Sub btnUp_Click()
  Me.txtValue = Nz(Me.txtValue, 0) + 1
End Sub

Private Sub btnDown_Click()
  Me.txtValue = Nz(Me.txtValue, 0) - 1
End Sub

您可以添加if语句来限制输入的数据

或者您可以使用第三方控件。

http://www.fmsinc.com/microsoftaccess/controls/components/spin-button/index.html

可能还有更多,但要注意在Access中使用这些类型的控件是不受支持的,并且无法保证它们将在Access中起作用。使用前面描述的本机方法会好得多。