在运行VBA代码的工作簿的隐藏工作表中嵌入了一些对象。这些对象(word,excel,pdf等)只是模板,我需要打开它们的副本或以只读方式打开它们,只需单击命令按钮即可,因此模板内容保持不变。
我已经在Internet上进行了搜索,但没有找到打开这些嵌入式对象为只读方式的方法。我正在运行此代码,但是保存为操作失败。
Private Sub M114_Click()
Dim WDObj As Object
Dim WDApp As Object
Set WDApp = GetObject(, "Word.Application")
Set WDObj = Sheets("Tools").OLEObjects("MO")
WDObj.Activate
WDApp.ActiveDocument.SaveAs ("MO_copy.doc")
Set WDObj = Nothing
Set WDApp = Nothing
End Sub
答案 0 :(得分:0)
您需要保护文档,以防止将其嵌入Excel之前。
以Word文档为例:
您可以使用Word的保护功能来保护它,并可以选择将不同的权限授予不同的用户。
Review
标签。Restrict Editing
**No Changes (Read Only)**
。或者,如果将嵌入式对象链接到源文件,则可以在Windows文件属性中将文件设置为“只读”。如果对象未链接到文件,则此方法将无效。