【问题标题】:Ways to incremement StartTime property of Outlook AppointmentItem增加 Outlook AppointmentItem 的 StartTime 属性的方法
【发布时间】:2012-08-07 13:36:37
【问题描述】:

我正在尝试为 Outlook 2010 编写一个 VBA 宏,以编程方式将 StartTime 属性增加几个小时(以抵消某些约会转向 UTC 时区的安装后问题)。定期约会的时区属性被证明几乎不可能修复,所以我认为只是增加时间(定期约会的 RecurrencePattern 的 StarTime 属性)将是一个更容易解决的问题。由于它不是整数,我无法弄清楚/找到任何方法来简单地将它增加一定数量。到目前为止,我发现的所有文档都只是关于将属性更改为特定日期。非常感谢任何帮助,谢谢!

【问题讨论】:

    标签: vba outlook increment


    【解决方案1】:

    MS 应用程序中的日期值是一个整数,表示自 1980 年 1 月以来的天数(窗口),一个小数表示当天的某个点。

    所以 2012 年 8 月 8 日凌晨 2:54:12 类似于 41129.1209722222

    只需将上述数字 + 1 = 41130.1209722222 (简单)添加一天

    要计算秒、分和小时,您需要计算出小数点代表您想要添加(或减去)的时间

    一小时用十进制 0.0416666(1 除以 24)表示

    一分钟是一天 1440 分钟的 0.00069444(1 除以 24 除以 60)。

    加 20 分钟 41129.1209722222 + 0.01388888

    【讨论】:

    • 如果可以,如何在 VBA 中访问它?我可以简单地将如上计算的小数分配给 RecurrencePattern.StarTime 属性吗?
    • 了解对象及其属性的最佳资源是
    • MSDN [link](msdn.microsoft.com/en-us/library/office/ff862177.aspx这个页面有一个很好的例子来创建你正在使用的对象的实例并设置它们的属性。
    • 您似乎已经尝试解决您的问题一段时间了。您已经针对我认为相同的问题启动了 5 个线程。您最接近答案的是stackoverflow.com/questions/11785074/… 您希望我添加到此线程而不是此处吗?如果您自己还没有找到,我有一个解决方案。
    • 这些线程中的每一个都代表了不断变化的解决方案的不同方面,有一点似乎一种方法可行但并不总是成功(称之为对冲我的赌注)。您对哪个问题有解决方案,如果您有机会发表,我很想听听。
    猜你喜欢
    • 2018-01-04
    • 1970-01-01
    • 2014-07-17
    • 1970-01-01
    • 1970-01-01
    • 2022-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多