gpt4 book ai didi

用于打开和关闭 Outlook 电子邮件规则的 Python 脚本

转载 作者:行者123 更新时间:2023-11-28 21:51:03 45 4
gpt4 key购买 nike

我正在尝试编写一个 Python 脚本/程序来关闭我在 Outlook 2010 中创建的电子邮件规则。

通过 VBA,我设法编写了一个函数,该函数将根据传入的 bool 值打开和关闭一组规则名称。

Function toggleRules(ruleNames() As String, tf As Boolean) As Boolean
Dim olRules As Outlook.Rules
Dim olRule As Outlook.Rule
Dim blnExecute As Boolean

For Each Rule In ruleNames()
Set olRules = Application.Session.DefaultStore.GetRules
Set olRule = olRules.Item(Rule)

olRule.Enabled = tf

If blnExecute Then olRule.Execute ShowProgress:=True
olRules.Save

Set olRules = Nothing
Set olRule = Nothing
Next Rule

End Function

这有效,并且将打开/关闭我用其他 VBA 函数按名称发送的规则。如果您好奇的话,目前当某个主题的任务提醒触发时,它会调用此函数。

我想通过 python 完成此操作,这样我就可以用比提醒计时器更复杂的方式触发它,而且只是一般原因我更喜欢那样做。好像可以用pywin32扩展来完成:

http://sourceforge.net/projects/pywin32/

但是,我很难尝试进入规则界面。我可以访问 Outlook 应用程序和命名空间,但似乎无法弄清楚从这里去哪里。

import win32com.client
x = win32com.client.gencache.EnsureDispatch("Outlook.Application")
y = x.GetNamespace("MAPI")

最终我想要基本上具有相同的功能,给定一个名称列表和一个 bool 值,让它在 outlook 中切换这些规则。

谢谢。

最佳答案

感谢指导,我已经弄明白了!

对于那些感兴趣的人,这里有一个基本的大纲,以及如何实现和禁用规则:

import win32com.client
x = win32com.client.gencache.EnsureDispatch("Outlook.Application")
y = x.GetNamespace("MAPI")
z = y.DefaultStore
a = z.GetRules()
b = a.Item("My Rule Name")
b.Enabled = False
a.Save()

再次感谢尤金·阿斯塔菲耶夫

关于用于打开和关闭 Outlook 电子邮件规则的 Python 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30948574/

45 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com