vba - 有没有办法只在启用宏的情况下显示 word 文件的内容?

我希望客户只有在启用宏时才能看到文档。

我发现以下代码应该可以通过隐藏显示表在 excel 上运行,但找不到该代码的“word 版本”。

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    With ThisWorkbook
        .Sheets("Request").Visible = xlVeryHidden
        .Sheets("Patching").Visible = xlVeryHidden
        .Sheets("SACM Attributes").Visible = xlVeryHidden
        .Save
    End With
End Sub

Private Sub Workbook_Open()
    With ThisWorkbook
        .Sheets("Request").Visible = True
        .Sheets("Patching").Visible = True
        .Sheets("SACM Attributes").Visible = True
    End With
End Sub

如果客户想要查看文档,我想“强制”客户启用宏,方法是隐藏文本并仅在他按下“启用宏”时显示它,或者创建一个密码提示,要求他这样做(客户端将通过邮件或其他类似方式收到密码。

提前致谢, 视频。

更新: 使用@Gareth 的建议我想出了这个(在文本前面放置一张图片并按下启用内容以显示它):

Set myRange = ActiveDocument.Content
myRange.Find.Execute FindText:="^g", _ ReplaceWith:="", Replace:=wdReplaceAll

我的问题是,如果图片不在默认布局中(如正方形/在文本前面),^g 无法识别它... P.S 我知道图片可以手动删除。

最佳答案

也许:

Private Sub Document_Close()

ThisDocument.Range.Font.Hidden = True

End Sub

Private Sub Document_Open()

ThisDocument.Range.Font.Hidden = False

End Sub

保存在ThisDocument

它会在关闭文档之前隐藏所有内容。并在文档打开并单击“启用宏”后显示所有内容。

#Note - 这不等同于 Excel 的 xlveryhidden,如果用户知道如何在不运行宏的情况下显示数据,则可以撤消。

https://stackoverflow.com/questions/57372196/

相关文章:

java - Spring WebFlux : How to access Request Body

python-3.x - 如何使用超时停止阻塞函数 subscribe.simple

reactjs - 如果文本很长,React 'react-data-table-component

wordpress - 在 Yoast 生成的 JSON-LD 模式中更改作者 @id

android-mediacodec - 如何找到 Google Pixel 2 手机的硬件解码器实

amazon-web-services - Alexa 智能家居技能 : Issue with de

python - Tweepy Cursor.items() 无法按预期使用 api.retweet

vhdl - 什么是{globally|locally} static {primary|expre

leaflet - 如果单个标记不在或靠近集群,则无法呈现

python - 如何覆盖 Django 中的包方法?