问题标签 [outlook-form]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
543 浏览

vba - Outlook 2010 VBS 如何将会议添加到特定日历

我正在尝试设置 VBS 以在按下命令按钮时在特定日历(非默认)中创建会议。我的代码有效,但在默认日历中创建会议。我试过玩弄它,但我是 VBS 的新手(主要使用 VBA)。我知道 VBA 和 VBS 是相似的,所以我确信必须调整一些小的东西。我希望将会议放置在名为“测试”的日历中,该日历位于“我的日历”下。

0 投票
2 回答
3042 浏览

vbscript - Outlook 表单 VBScript 无法运行

我正在设计一个 Outlook 联系人表单。我试图放入“查看代码”按钮的脚本编辑器中的示例代码都没有做任何事情。最基本的例子是:

当我单击运行此表单按钮时,不会出现任何消​​息框或错误消息。它似乎完全忽略了 VBScript。我尝试过的每一段示例代码都会发生同样的事情。

这是我第一次为 Office 或 VBA 或 VBScript 进行任何开发,所以我认为我缺少一些基本的东西,但我已经观看并阅读了一些教程,完全按照显示的内容进行操作,但没有任何效果。我可以设计和发布带有自定义字段和基本组合框的联系人表单。

在信任中心,我将宏设置设置为“所有宏的通知”,并且电子邮件安全选项“允许共享文件夹中的脚本”和“允许公共文件夹中的脚本”都被选中。

我正在使用 Windows 10 x64 版本 1703 Build 15063.608 上的 Office 365 32 位版本 1708(Build 8431.2079 Click-to-Run)月度频道设计联系表单。

任何帮助将不胜感激!!

谢谢!

0 投票
1 回答
234 浏览

python - 无法通过 python 读取 Outlook 自定义表单

我有一个自定义表单的 Outlook 电子邮件。当我们双击它时,它会以表格形式打开。如果我们将它作为普通邮件打开(单击),它会以一些默认的正文签名打开。我能够阅读普通邮件。我需要如何阅读 Outlook 自定义表单的过程

我尝试使用以下代码来读取表格。

我期待获得表单数据。但我只收到一封普通的电子邮件。表格可以通过双击打开。需要一些建议来通过 python 阅读 Outlook 自定义表单。

0 投票
1 回答
114 浏览

c# - FormRegionInitializing 仅在处于调试模式 (VSTO Outlook) 时触发

我已经构建了一个 VSTO Outlook 加载项,当从对象资源管理器中选择邮件消息(IPM.Note 消息类)时,它只会在阅读窗格中显示一个相邻的表单区域。加载项在调试模式下按预期工作。但是,当使用安装程序安装时,加载项会正确加载(并且代码会在启动时触发 MessageBox.Show(),但不会显示表单区域。我已将 MessageBox.Show() 事件放在 RepInfoFactory_FormRegionInitializing 方法中但他们都没有开火。

我搜索了类似的情况,但只找到了整个加载项被禁用的情况。就我而言,它加载得很好。我尝试以管理员身份启动 Outlook,但这似乎不会影响加载项。我还设置了环境变量以显示 VSTO 警报并记录它们,但没有记录任何内容——我怀疑是因为加载项加载正常。

由于我将 FormRegionMessageClass 属性设置为 Note,因此我仔细检查了资源管理器中的对象确实是 IPM.Note。

我正在运行 Outlook 2016(即点即用)和 VS 2019。

我会喜欢关于检查/尝试的任何其他建议。

谢谢!

更新 根据下面@Eugene 的回复,我查看了为每个消息类插入注册表项的要求,因为Microsoft 的文档表明这必须通过Windows Installer 配置来完成。我尝试了以下但没有成功:

  • 我的项目注册表项的名称是“Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Office\Outlook\AddIns\COMPANY.CustSvc.Watchtower”。据我了解,这必须作为 FormRegions 注册表项的一部分列出。
  • FormRegions\IPM.Note 分支是“Computer\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Office\Outlook\AddIns\FormRegions\IPM.Note”
  • IPM.Note 的条目是“WATCHTOWER.RepInfo”(这是 FormRegionName 属性的名称),值为“=COMPANY.CustSvc.Watchtower”(注册表项的名称。
  • 我根据@Eugene 的建议添加了日志记录,并且没有从 FormRegionInitializing 事件中记录任何内容,因为它没有触发。

关于为什么 FormRegionInitializing 没有触发的任何其他想法?

0 投票
1 回答
183 浏览

outlook - 如何根据运行时输入的用户数据以编程方式设置 Outlook 365 会议的主题(标题)

背景

我们的培训团队使用 Excel 工作表来跟踪我们的在线培训,列出日期、客户、主题、培训类型、会议类型(Teams 现场活动或 Teams 会议)、演示者和主持人。除了工作表中的信息外,我们还为每个研讨会创建了 Outlook 365 会议。Outlook 会议的主题(标题)采用以下格式:{客户} {主题} {事件类型} {会议类型} {开始}。

目标

  1. 将 Excel 工作表替换为表格布局中的 Outlook 365 视图,从而消除我们流程中耗时且冗余的步骤。

  2. 尽量减少数据输入。

  3. 以这样的方式执行 1 和 2,以便我可以将解决方案分发给我们的培训团队,而无需向系统管理员提出请求或要求我们的团队在代码或配置方面进行任何繁重的工作。

问题

我尝试了两种方法,但都卡在了同一个地方:我不知道如何将会议请求主题设置为等于用户输入的信息。

进步

方法 1:Outlook 表单或模板

我在 Outlook 365 的约会请求中将 P.2 修改为自定义字段 Customer、Topic、EventType、MeetingType、Presenter 和 Moderator 的数据输入表单。另一个自定义字段 TrainingEvent 是一个只读布尔值,在创建约会时设置为 Yes。我使用此字段将非培训事件从新日历视图中过滤出来。另一个自定义字段 EventID 有一个初始值,它按照会议主题所需的顺序连接其他字段。我将修改后的请求保存为表单和 Outlook 模板以测试每种方法。

两者都可以正常工作,直到将实际会议主题设置为等于 EventID。也就是说,当我提交请求时,会创建会议并且所有字段都填充有我输入的内容。主题保持空白。我找不到任何关于如何在运行时根据用户输入填充主题的指导,使用 VBA 或其他方式。

方法 2:Microsoft Forms + 自动化

所以我尝试了另一种方法:我在 Microsoft Forms 中创建了一个表单来收集相同的数据,然后通过 Microsoft Automate 运行它,修改一个在提交表单时创建 Outlook 365 事件的现有模板。结果相同:使用我输入的所有数据创建事件,但主题保持为空。

显然,我可以要求我们的团队输入所有单独的字段和主题,但这破坏目标 #2。

我错过了什么?这感觉应该是一个很容易解决的问题。

0 投票
1 回答
30 浏览

vba - 自定义 Outlook From 无法使用“.Close”关闭

我使用 VBA 创建了一个自定义 Outlook 表单。我想发送一封邮件,然后只需单击一个按钮即可关闭表单。应该发送邮件,然后关闭表格。编写了以下代码,但这会在提示用户保存更改后关闭表单。用户必须关闭提示的 MsgBox,然后关闭表单。

我想在没有提示消息的情况下关闭表单。我怎样才能做到这一点?

0 投票
1 回答
26 浏览

vba - 如何在 Outlook 自定义表单上检测周末?

我说的是 Outlook 自定义表单,而不是 VBA 用户表单。

我使用 olkdatecontrol 工具作为日期选择器。有没有办法使用这个工具检测周末?

我尝试了以下。