Protect Workbook
To prevent other users from viewing hidden worksheets, adding, moving, deleting, or hiding worksheets, and renaming worksheets, you can protect the structure of your Excel workbook with a password.
Problem statement
Consider you are shipping your own Excel template which you ship with protected mode and certainly you created your own password to open it. While checking if workbook that you are accessing through code is protected using your own password? otherwise your code will fall, if it encounter any other file having different protection password.
C# code example
public static bool IsWorkbookProtected(Excel.Workbook wb, string passCode) { try { wb.Unprotect(passCode); return true; } catch(Exception ex) { Console.WriteLine("The file is protected"); return false; } }
VBA code example
Public Function CheckWorkbookProtection(wk As Workbook, oPassword As String) As Boolean CheckWorkbookProtection = False On Error GoTo errh 'Try unprotecting workbook wk.Unprotect oPassword 'exist function with success CheckWorkbookProtection = True errh: If Err.Number <> 0 Then Exit Function End If End Function
Above method will return true/false by which you can validate your protection.
Next >> How to edit protected sheet in Excel? code example