However if you can lock your workbook with the existing hardware of the machine , you will not need external hardware dongles.
if you use following Excel function to get Mother Board Serial Number, you can compare the current machines mother board serial number with the desired one. If you know that the desired serial number does not match with current machine you know that there is security voilation and you can close the workbook through VBA. You will need to copy this code to regular VBA module of your workbook
Excel Function to Get Mother Board Serial Number
| Public Function MBSerialNumber() As String Dim objs As Object Dim obj As Object Dim WMI As Object Dim sAns As String Set WMI = GetObject("WinMgmts:") Set objs = WMI.InstancesOf("Win32_BaseBoard") For Each obj In objs sAns = sAns & obj.SerialNumber If sAns < objs.Count Then sAns = sAns & "," Next MBSerialNumber = sAns End Function |
After you have placed above function in VBA module. You will need to copy this code to ThisWorkbook section of your workbook . This is autoopen macro which compares the MBSerialNumber of current machine with the desired MBSerialNumber. In case it does not mactch, it will close activeworkbook.
| Private Sub Workbook_Open() Set RMBSN = Sheets(1).Range("C4") ' This is whare you have already stored required MBSerialNumber If MBSerialNumber <> RMBSN Then ' Checking if current machine serial number is matching with required MsgBox ("Data Security failier, This workbook will close") ' In case it does not match workbook will be closed ActiveWorkbook.Save ActiveWorkbook.Close End If End Sub |
Download Excel file with macro for Hardware Locking for Excel Workbooks
and try to open it on your machine and see how it works. This is locked version and you will not be able to open it on your machine.However you can down load Unlocked version of Hardware Locking for Excel Workbooks.








0 comments:
Post a Comment