Microsoft 製品に組み込まれている Visual Basic の実装。
こんにちは。
> 現在の構想では、Excelのように一時的にプロテクトを解除して、処理が終わったら再プロテクトする、という発想でマクロを組もうと考えています。
文書を保護しておいて、DocumentオブジェクトのUnprotectメソッドで一時的に保護を解除、マクロで処理を行った後に再びDocumentオブジェクトのProtectメソッドで文書を保護すれば良いかと思います。
Option Explicit
Public Sub Sample()
Const PW As String = "pass" '文書保護のパスワード
With ActiveDocument
.Unprotect Password:=PW '保護を一時的に解除
'------------------------------------------
'行いたい処理をここに記述
'------------------------------------------
On Error Resume Next
With Application.Dialogs(wdDialogEditReplace)
.Find = "てきすと"
.Show
End With
On Error GoTo 0
'------------------------------------------
.Protect Type:=wdAllowOnlyFormFields, Password:=PW '再度保護
End With
End Sub