Crack Password Protected Vba Project Unviewable Vba
Otdel kadrov plyus 2010 kryak. How to protect VBA code and VBA project. By default, Microsoft Excel offers VBA project password protection as a way to protect VBA code. This method of VBA.
VBA code stored in worksheets (document modules) can be read from workbooks with unprotected structure (Review > Protect Workbook), even if the VBA project is password locked or. This hack can be demonstrated with the following simple steps: • Store event code in a worksheet • Lock the VBA project with a password (VBE > Tools > VBAProject Properties > Protection) • Copy the worksheet with the event code to a new workbook The new workbook has its own VBA project, which is unlocked at the time of creation. Unfortunately, the properties of the source VBA project, including its password, cannot be transferred to the target workbook. Thus, the code embedded in the newly copied worksheet will be visible, even if the source VBA project was password locked or custom protected as unviewable or Unviewable+! The workaround for this problem involves 2 steps: • Protect the workbook's structure: File > Info > Protect Workbook > Protect Workbook Structure or Review > Protect Workbook > [Protect workbook for structure] to prevent worksheet copying. • Include only minimal code in the worksheets. Place the bulk of any such code in a standard module and call on it from the worksheet. 'USE: Private Sub Worksheet_SelectionChange ( ByVal Target As Range) Call UserKeyPress(Target) 'procedure stored in a standard module End Sub 'INSTEAD OF.
There are times when worksheets with VBA code may have to be copied (manually or by VBA) and saved to a new workbook: Sheets('Sheet1').Copy ActiveWorkbook.SaveAs. An error or unexpected results could occur, if the event code is triggered in the new workbook, besides the fact that the code would be readable without a VBE password, as discussed earlier. Here are several options, which could be used to exclude the VBA event code from being included in the new workbook: • Save new workbook in a macro-free format, when using Excel 2007 or later version (xlOpenXMLWorkbook, see ) • Copy the data range (not the source sheet) to a new macro-free (document module) worksheet • Delete all worksheet event code in the destination worksheet using the VBA extensibility library.
The function shown below deletes code inside Excel document modules.