访问:当另一个字段更新时,自动在一个字段中输入日期

时间:2016-07-06 21:22:09

标签: ms-access

我有一个具有不同状态选项的字段,许多人会定期更新。我希望它旁边的字段显示状态字段的最后一次更改的日期。 我是一个相当新的访问者,所以我不确定这是否是我缺少的一个非常基本的东西。

感谢

2 个答案:

答案 0 :(得分:1)

创建BeforeChange数据宏。您可以使用old表查看“状态”字段的上一个值,并使用Status查看当前值。如果它们不同,那么该字段已更改,您可以更改修改日期

enter image description here

您可以自己制作或尝试将XML复制并粘贴到MacroEditor中。

<?xml version="1.0" encoding="UTF-16" standalone="no"?>
<DataMacros xmlns="http://schemas.microsoft.com/office/accessservices/2009/11/application">
    <DataMacro Event="BeforeChange">
        <Statements>
            <ConditionalBlock>
                <If>
                    <Condition>[Old].[Status]&lt;&gt;[Status]</Condition>
                    <Statements>
                        <Action Name="SetField">
                            <Argument Name="Field">DateStatusModified</Argument>
                            <Argument Name="Value">Now()</Argument>
                        </Action>
                    </Statements>
                </If>
            </ConditionalBlock>
        </Statements>
    </DataMacro>
</DataMacros>

此方法的优点是,如果有人直接在表格或其他表单或其他程序中进行更改,它将执行此逻辑。

答案 1 :(得分:0)

相当基本。 :)你需要一个AfterUpdate事件程序:

Private Sub StatusField_AfterUpdate()
    ' Set your date field to the current date. Use "= Now" to include time information.
    Me!DateLog = Date
End Sub