【问题标题】:How to programmatically refresh user defined form fields in Outlook mail如何以编程方式刷新 Outlook 邮件中的用户定义表单字段
【发布时间】:2020-06-25 07:25:47
【问题描述】:

我正在使用用户定义的表单字段从 Outlook 邮件中捕获数据。

但是某些表单字段,尤其是带有验证的表单字段没有显示正确的值

例如时间线字段具有 Receivedtime + 估计值的验证,尽管大多数情况下它显示正确的值,有时时间线字段不显示任何值,即使接收时间字段和估计字段中有值。

如果我手动打开和关闭邮件,该字段会刷新并显示正确的数据。这让我觉得这些字段不会自动更新。

有什么方法可以刷新表单域,以便显示更新的数据?

【问题讨论】:

  • 除了您提到的问题之外,您的代码根本不起作用。我知道,因为正确缩进代码确定您有一个End If 没有If。请参阅minimal reproducible example
  • 嗨,ashleedawg,感谢您的提醒,我已对问题进行了一些更改以使其更加清晰。我已经删除了代码,因为它不是主要问题。我需要以编程方式更新邮件表单字段。
  • 我不是说你应该删除应该完全删除代码。 (问题在您的代码中,对吗?)包含您的代码(以及适用时的示例数据)是否重要,但我的观点是它应该是一个“MCVE”代码示例(请参阅“minimal reproducible example”)。但是您发布的内容还有与您的问题无关的其他问题(挂了End If。)不清楚您的问题是什么。

标签: vba ms-access outlook


【解决方案1】:

你也可以试试

mailobject.userproperties.find("formfieldname").repaint

repaint 方法会更新屏幕,类似于 refresh 方法。那应该对你有用。

【讨论】:

    【解决方案2】:

    我在另一个论坛找到了这个问题的解决方案: 答案链接:answer

    SendKeys "{F5}", True

    这对我有用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-10-18
      • 2011-06-22
      • 2011-02-04
      • 2010-12-07
      • 1970-01-01
      • 2013-01-15
      • 1970-01-01
      相关资源
      最近更新 更多