vba - 如何使用硬编码的月份和当前年份进行查询
问题描述
我有一个 Access 表,其中包含一个名为 ClaimDate 的列。我有一个显示各种内容的报告,报告的用户表单要求他们输入他们希望在报告上显示的数据集的日期范围。然而,在报告的底部,我有一个今年的运行记录。这一切都很好,但我正在像这样对底部的日期进行硬编码;
WHERE tbl_CSRQA.CustomerServiceRep=[forms]![frm_CSRErrorTracking]![CSRNameCB] AND tbl_CSRQA.ClaimDate Between #7/1/2019# And #7/31/2019#
我想做的是保留月/日的硬编码,但将年份更改为当前年份。这样我就不必在 2020 年到来时返回并更新所有这些查询。
我知道我可以使用 Year(Date()) 函数来获取当前年份,但我无法将其集成到我的查询中。我以为会是这样的;
WHERE tbl_CSRQA.CustomerServiceRep=[forms]![frm_CSRErrorTracking]![CSRNameCB] AND tbl_CSRQA.ClaimDate Between #7/1# & Year(Date()) And #7/31# & Year(Date())
然而,这只是给我一个错误。
这是完整的查询;
SELECT tbl_CSRQA.ClaimantAdded, tbl_CSRQA.DocsPhoneCall, tbl_CSRQA.InsdDriverVehInfo, tbl_CSRQA.LossInfo, tbl_CSRQA.TemplateCalNotes, tbl_CSRQA.EmailtoLiab, tbl_CSRQA.ReserveScreen, tbl_CSRQA.InsNamePhone, tbl_CSRQA.Clerical, tbl_CSRQA.AdditionalSteps AS [Total Claim Errors Jul]
FROM tbl_CSRQA IN '\\blcorp\shares\Claims\Liability Claims\Correspondence\CAST Database\Protective Insurance CAST Database Tables.accdb'
WHERE tbl_CSRQA.CustomerServiceRep=[forms]![frm_CSRErrorTracking]![CSRNameCB] AND tbl_CSRQA.ClaimDate Between #7/1/2019# And #7/31/2019# AND
(tbl_CSRQA.ClaimantAdded="No" OR
tbl_CSRQA.DocsPhoneCall="No" OR
tbl_CSRQA.InsdDriverVehInfo="No" OR
tbl_CSRQA.LossInfo="No" OR
tbl_CSRQA.TemplateCalNotes="No" OR
tbl_CSRQA.EmailtoLiab="No" OR
tbl_CSRQA.ReserveScreen="No" OR
tbl_CSRQA.InsNamePhone="No" OR
tbl_CSRQA.Clerical="No" OR
tbl_CSRQA.AdditionalSteps="No");
我真正需要做的只是更新查询,以便硬编码的日期只查找当前年份,而不必输入“2019”或“2020”。
解决方案
推荐阅读
- javascript - Javascript - 替换字符串子字符串中的字符
- angular - 根据 ID 显示对象属性
- python - pyAV 的 pip 安装失败,退出状态为 1181
- docker - 使用 docker-compose 在 Gitlab CI 中保持 docker 构建
- javascript - 无法打开 Bootstrap 汉堡包下拉菜单或其他
- 带下拉菜单
- react-native - 按下后退按钮时反应本机贝宝包装崩溃
- azure-web-app-service - FTP 访问临时文件夹
- verilog - 我正在编写一些 verilog 代码,并且不断收到错误代码“无法解析多个常量驱动程序”?
- excel - 将 Objectname 中的变量用于 WITH 语句
- ms-access - 使 Table ms 访问 VBA