【问题标题】:Excel Send As Attachment is sending cached version of fileExcel 以附件形式发送正在发送文件的缓存版本
【发布时间】:2012-04-12 09:06:05
【问题描述】:

我有一个在 Excel 2010 中构建的基于宏的文件。它包含敏感数据。为了防止敏感数据被随意传播,我为该文件创建了一个密码。我还创建了防止将文件保存为 PDF 以外的任何文件的宏。所以基本上,我已经做了我能想到的一切来防止文件以 excel 格式发送出去。

但是,我的聪明(或不那么聪明)的用户发现了一个无意的解决方法。如果他们填写了表格,然后在 Excel 中点击“作为附件发送”选项,他们就可以发送预先填充了数据且所有功能都完好无损的文件。这绕过了我的安全措施,也让我很恼火,因为我已经明确告诉用户不要发送此文件。

在网上查了一下,好像没有办法关闭邮件作为附件的功能。似乎也没有任何方法可以检测到电子邮件事件(相当于 Before_Print 事件)。我想知道 StackOverflow 社区是否对如何解决这个问题有任何建议。

【问题讨论】:

  • 删除菜单中的作为附件发送条目并在您的工作簿失去焦点之前将其添加回来?例如:rondebruin.nl/ribbon.htm
  • I've also created macros that prevent saving.... out in its excel format. 这还不够好 :) 如果用户禁用宏,那么他们将能够以 PDF 以外的格式保存文件。为什么不创建一个 PDF 表单,然后让用户填写并发送给您?
  • 这意味着我必须为整个公司准备这些表格,这不在我的工作描述中! :-) 此外,如果他们禁用宏,他们会禁用使该工具成为风险的大部分功能(它包含支付信息)。
  • 我看到了有关如何修改 UI 以使用 XML 将邮件作为附件功能删除的链接。我的偏好是不这样做,因为如果在用户使用我的文件时发生任何事情并且我没有机会重置 UI,这将导致问题。
  • 玩弄 riboon 很有趣;我很确定 XML 是特定于 xlsx 文件的 - 因此,如果用户在文件中时发生某些事情,xl 在另一个文件被激活时重置

标签: email caching excel email-attachments vba


【解决方案1】:

我使用自定义 UI 编辑器并使用 XML。我有一个标准模板,用于限制 xl 中的人员工具栏。

我确信有解决方法,但它可能会有所帮助:

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon startFromScratch="true">
<qat>
 <documentControls>
<control 
   idMso="FileSaveAs"
   screentip="SAVE AS..."
   supertip="Click here to save this file to another location."/>
<control 
   idMso="WindowSwitchWindowsMenuExcel"
   screentip="SWITCH EXCEL FILE"
   supertip="Click here to switch from this workbook to another open excel file."/>
<control 
   idMso="FilePrint"
   screentip="PRINT FILE"
   supertip="Click here to enable the print menu."/>
 </documentControls>
 </qat>
 </ribbon>
</customUI>

【讨论】:

  • 我对 XML 编码不是很熟悉,我不想实现一些我不完全理解的东西。我感觉到我的问题确实没有任何解决方法。在 Excel 2007 中甚至可以进行 XML 操作吗?我有一些用户仍然停留在那个版本上。
  • 如果文件是“.xlsx”或“xlsm”,这是可能的。前往Ron's网站进行解释。你需要下载一个有点像记事本的小工具。它位于压缩文件中的here。我认为这只是在 Excel 中关闭您的 excel 文件的情况。打开小工具并打开文件并在其中打开您的目标 xlsx 文件,然后插入并弹出您需要的自定义文件并复制我上面提供的代码......在实验性 xlsx 文件上尝试它
  • 好的 - 工作正常;您会注意到,当您打开文件时,功能区会发生变化,然后当您关闭文件时,它会恢复到原来的状态,因为操作现在是实际文件的一部分。它比操作工具栏的旧方法稳定得多——这很容易让人们的设置一团糟。
  • whytheq - 此修改是否允许删除文件 | 下的选项?保存并发送菜单?这甚至是功能区的一部分吗?
  • 先试试上面的方法,看看能不能用。关闭 xlsx 文件并在自定义 UI 编辑器中再次打开它 - 这次注释掉上面添加 FileSaveAs 按钮并保存文件的部分。
猜你喜欢
  • 1970-01-01
  • 2013-07-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多