在“受保护的视图”中为用户打开Excel 2013 vba创建的工作簿

时间:2016-03-25 20:34:59

标签: excel vba

我有通过工作表旋转的VBA代码,并创建通过电子邮件发送给客户端的工作簿。它非常简单,实际上,它将输出文件写入My Documents。这是保存代码:

With wkbOutputBook
.CheckCompatibility = False
.Save
.Close
End With

当工作簿打开时,Excel说:

受保护的视图Office检测到此文件存在问题。编辑它可能会损害您的计算机。点击了解更多详情。

好的我知道这意味着什么,因为未知的Excel认为这个文件是通过Outlook发送的,或是从Internet上下载的。但事实并非如此。我尝试了以下内容:

以不同的版本/文件格式保存

使用“另存为”而不是“保存”

明确关闭保护模式。保护模式与受保护的视图不同。

当然,“我的文件”不被视为“不安全”的位置。

感谢。

1 个答案:

答案 0 :(得分:0)

如果您可以接受以只读模式保存的文件,这可能会消除错误消息。

Dim path As String

path = "full-path-with-filename-and-extension"

With wkbOutputBook
  .SaveCopyAs (path)
  SetAttr (path), vbReadOnly
  .Close
End With

你尝试.SaveCopyAs(路径)方法没有涉及设置只读的代码行,但我想它无济于事。

您尝试将文件保存为哪种格式?问题是出现在您的PC上还是您在其他PC上测试过宏/输出文件?问题可能涉及系统注册表中的内容。