用例场景
我有一个低收入居民的客户。这些居民可以填写带有一堆复选框的纸质表格。
它有一个“教育”部分(GED、文凭、助理等),另一部分为“技能”(暖通空调、管道等)
雇主联系我的客户,例如要求他们所有接受过 HVAC 培训的居民都拥有 GED。
现在,他们手动梳理纸质记录以寻找匹配项
到目前为止的解决方案
我正在为它们设置一个访问数据库。
我们有姓名、手机、电子邮件、地址等简短字段。
然后,我们在纸质表格上显示不同技能的“是/否”框。
我已经制作了表格和表格,客户员工收到纸质副本后可以轻松填写。
我的问题我需要你的帮助
我想要一个动态查询,提示最终用户(我客户的员工)只需选中一些框并吐出居民的个人信息。
例如,他们可以勾选“HVAC”,然后勾选“GED”,点击搜索按钮,开始针对是/否框进行查询,并吐出与他们检查的技能和教育相匹配的居民的个人信息。
我为每项技能构建了单独的预制静态查询,但它很笨重,而且对用户不友好。
我在访问方面非常缺乏经验,如果您有涵盖这个确切场景的培训材料(YouTube 视频、操作方法网站),我就可以弄清楚。我认为我的问题是,我不知道足够的访问术语来正确搜索我想要找到的内容。
对于这个简单的情况,您只想按是/否列进行过滤,则不必使用 VBA。不过它更灵活(也许更高效)。
创建一个搜索表单(我们称之为frmSearch
),所有技能均带有未绑定的复选框(chkHVAC
, chkGED
etc.)
然后,您可以使用布尔逻辑来使用涵盖所有技能的单个查询:
- 如果未选中该复选框(
chkHVAC = False
),该技能不过滤(返回记录,无论字段true还是false)。
- 如果选中,则仅返回字段 = True 的记录。
像这样。[HVAC]
and [GED]
是表列。
SELECT *
FROM myTable
WHERE (Forms!frmSearch!chkHVAC = False OR [HVAC] = True)
AND (Forms!frmSearch!chkGED = False OR [GED] = True)
AND ... etc.
您可以在搜索表单上放置一个按钮,用于打开查询(如果已经打开,则可能会关闭它):
DoCmd.Close acQuery, "myQuery"
DoCmd.OpenQuery "myQuery
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)