我在Access中负责一个正在工作的项目,我对此非常不熟悉。我想要做的是创建某种查询或宏或vba代码,查看我设置的表格,其中包含事件发生的日期并引用某个范围(例如,现在为30天),如果是日期发生的事件超出范围,然后将其添加到单独的表中。问题是,某些事件比其他事件更频繁地发生(一些事件每90天发生一次,一些事件每7天发生一次)。
在图片中,事件4多次出现,但我只想看看最近的事件(我已经将数字更改为发生事件的实际名称)。
我已经玩了一些日期代码,我从这个网站得到了记号:
我遇到的另一个问题是我想让它只看最近的事件。我一直在玩这个代码,就像我在另一个帖子上看到的那样:
MS Access query - select most recent date
Select cleaning, Max(Date1) as most_recent
From CleaningLog
Group by Cleaning;
但它一直告诉我存在编译错误,并突出显示“清理”列的名称。
我无法对这两个问题做任何有用的事情。如果有人可以提供帮助,我们将不胜感激!
修改
日期来自此处的表单,用户在该表单中键入事件发生的日期。
答案 0 :(得分:0)
您的查询应该有效 - 如果您将其复制到新查询的 SQL窗格而不是代码模块(这将导致编译错误)。
如果值确实是文本,请使用CDate将这些值转换为真实日期值。永远不要将日期作为字符串处理,没有例外。