【问题标题】:Afterupdate event to write Date value from Textbox to Textbox with inputmask gives error 80020009 when overwriting使用输入掩码将日期值从文本框写入文本框的更新后事件在覆盖时会出现错误 80020009
【发布时间】:2020-07-11 14:30:58
【问题描述】:

我有一个 afterupdate 事件,在该事件中,必须将在文本框中输入的值放入另一个文本框中。最初,只要第二个文本框为空,它就可以工作。但是,当我尝试更改第一个文本框中的数据时,出现错误 80020009。

  1. 文本框一被称为 Valdate
  2. 文本框二被称为actionate
  3. 两者都有输入掩码##-##-####

valdate 中输入日期时,afterupdate 甚至会触发并将日期放入 actiondate 中减去两天。

这部分有效。

但是,当 actiondate 被填写并且我更改 Valdate 时,我收到错误 80020009。

我在几个论坛上找到了一些信息,并在此基础上尝试设置 valdate 的格式并尝试将 valdate 调暗。我可能做错了,但两者都不适合我。

我使用的代码是:

Private Sub ValDate_AfterUpdate()

Me.Actiondate = Me.Actiondate & ([ValDate] - 2)

End Sub

我想要的是,每当我更改文本框 1 中的日期时,将输入减去 2 天的日期或覆盖文本框 2。

【问题讨论】:

    标签: vba ms-access


    【解决方案1】:

    使用添加日期

    Private Sub ValDate_AfterUpdate()
    
        If IsNull(Me!ValDate) Then
            Me!Actiondate = Null
        Else
            Me!Actiondate = DateAdd("d", -2, Me!ValDate)
        End If
    
    End Sub
    

    【讨论】:

    • 这很有意义。谢谢古斯塔夫!像魅力一样工作。
    猜你喜欢
    • 2013-11-02
    • 1970-01-01
    • 2020-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多