ms-access - Access 过滤器 VBA

标签 ms-access vba

我正在尝试在 vba 中使用这样的过滤器:

Private Sub Form_Load()

    Me.Filter = "[Alvo] = " & AlvoAtual  
    Me.FilterOn = True  
    Me.Requery  

End Sub

其中 AlvoAtual 是全局变量,但什么也没发生。当我将 AlvoAtual 更改为特定值时,也不会发生任何事情。像这样:
Private Sub Form_Load()

     Me.Filter = "[Alvo] = 'AAAA'"
     Me.FilterOn = True
     Me.Requery

End Sub

有人知道问题吗?

我采用这个问题 (VBAWhatnow) 是希望得到回答,而不是像我一样重复 advised .

除了局部变量之外,我正在尝试做同样的事情。

当我手动定义值时,我的过滤器工作正常,但是当我引入变量时,过滤器不再工作
Forms![frmPendingActions]![qryPendingAction subform].Form.Filter = "Filterby = FilterCrit"

谁能帮我找到一个好的解决方案?

最佳答案

您(VBAWhatnow)说“当我手动定义值时,我的过滤器工作正常,但是当我引入变量时,过滤器不再起作用”。

然后在您的过滤器分配中...

.Filter = "Filterby = FilterCrit"

所以我假设 FilterCrit是局部变量的名称。如果这是真的,请使用变量的值而不是其名称构建过滤器表达式。

Filterby是数字字段类型...
.Filter = "Filterby = " & FilterCrit

Filterby是文本字段类型...
.Filter = "Filterby = """ & FilterCrit & """"

如果这些变化都不适合您,请向我们提供有关 Filterby 的更多信息。和 FilterCrit .

关于ms-access - Access 过滤器 VBA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4645971/

相关文章:

excel - 根据下拉列表选择更改整个表格行的背景颜色 - 条件格式

vba - Access 2010 VBA 错误 2425 "The expression you entered has a function name that database can' t 查找”

vba - 将满足范围内的值的行复制到sheet2

sql - Access 关系问题导致数据未提取到正确的表

mysql - 循环 Access MS Access 中的连续记录

vba - 将 Variant 数组传递给 sub, "Expected: ="

sql - 这个sql语句有什么问题?

excel - Excel Vba 中的日期选择器

vba - 如何在 MS-Access VBA 中将窗体背景设置为十六进制颜色

sql - 为什么 Dapper 即使没有异常(exception)也不更新数据到 MS Access?