我是Access的新手。 我有两张桌子。 第一个叫做日期 - 它有3列(除了键):
从日期(例如2017年7月1日)
迄今(例如2017年9月30日)
期间(例如2017-2018 Q1)
第二个表名为费用,它有很多列,其中两列是费用日期和期间。
费用日期由用户输入。
我想通过基于费用日期的日期表中的DLookup
功能来填充期间,例如(使用Excel语法)
`DLOOKUP(["From Date":"To Date","Expense Date","Period")`
我假设这个函数需要在Expenses设计视图的Lookup选项卡下的Row Source中编写。
是否有人能够告诉我Access的正确语法是什么以及我应该在哪里编写所需的函数?
答案 0 :(得分:0)
不,你不会在RowSource中使用DLookup。您将使用SQL语句。
DLookup()表达式可以在文本框的ControlSource属性中使用,也可以在查询设计视图的Field单元格中使用。
在这种情况下,表达式为:
DLookup("Period", "Dates", "#" & [Expense Date] & "# BETWEEN [From Date] AND [To Date]")
如果您使用国际日期,请查看http://allenbrowne.com/ser-36.html。可能需要古斯塔夫关于格式化数据的建议。
请参阅访问帮助或Google搜索,详细了解域聚合功能。
建议名称中没有空格或标点符号/特殊字符(仅限下划线异常)。
答案 1 :(得分:0)
如果您有一个绑定到表费用的表单,您将使用绑定到字段费用日期的文本框的 AfterUpdate 事件(此处名为TextExpenseDate):
scaleMode