以下の関数を使用すると、プロジェクトを編集する前に、VBProjectが保護されているかどうかを確認できます。

Function ProtectedVBProject(ByVal wb As Workbook) As Boolean

' returns TRUE if the VB project in the active document is protected

Dim VBC As Integer

VBC = -1

On Error Resume Next

VBC = wb.VBProject.VBComponents.Count

On Error GoTo 0

If VBC = -1 Then

ProtectedVBProject = True

Else

ProtectedVBProject = False

End If

End Function

例:

If ProtectedVBProject(ActiveWorkbook) Then Exit Sub