【发布时间】:2014-01-29 02:36:28
【问题描述】:
tl,dr: 我可以让 Application.Dialogs(xlDialogSendMail).Show 对话框最小化吗?
程序:我有一个自动创建文件、编译电子邮件并附加文件的解决方案。用户可以查看并选择发送电子邮件或关闭而不发送。
问题:问题是一些用户想将内容复制/粘贴到自动编译的电子邮件正文中。这是不可能的,原因有两个:
- 编译电子邮件的例程使用剪贴板。
- 该对话框不允许用户最小化(以便他们可以在电子邮件编译后复制内容)。
可能的解决方案:
- 不要在电子邮件编译期间使用剪贴板。我宁愿不这样做,因为这需要对代码进行适度规模的修改。
- 以这种方式调用 Outlook 对象库来创建电子邮件。我宁愿不这样做,因为这个工具分发给大约 110 人使用不同版本的 Excel 和 Outlook,并且(Outlook 库)兼容性问题会很猖獗。
- 在电子邮件编译例程之后管理剪贴板,以使最后一个用户创建的“副本”再次处于活动状态。这种解决方案似乎可行但并不理想。
- 允许内置对话框模式化/最小化,以便用户可以在编译后复制其内容。 这个解决方案似乎是最好的。
非常感谢任何答案/想法/指导!
【问题讨论】:
-
with varying versions of Excel and Outlook and (Outlook Library) compatibility issues would be rampant.如果您使用后期绑定,则不会:) -
顺便说一句,我不能建议您进行任何代码增强,因为我不确定您如何在代码中使用
Application.Dialogs(xlDialogSendMail)。你很好地解释了你的问题。如果您在其中包含一些代码,那么这可以归类为“问得非常好”;)