Disable spreadsheet when copied to incorrect file path or differen ip address

  • Thread starter Thread starter Schatzi
  • Start date Start date
S

Schatzi

I have password protected the worksheets and VB code and disabled the
saving function. Still, the program can be copied and pasted to
another location. Is there a way to implement a macro that will disble
the spread sheet if is in an incorrect file location or an incorrect
IP address?
 
Schatzi wrote :
I have password protected the worksheets and VB code and disabled the
saving function. Still, the program can be copied and pasted to
another location. Is there a way to implement a macro that will disble
the spread sheet if is in an incorrect file location or an incorrect
IP address?

You can check 'ThisWorkbook.Path' on startup for the expected string
value and if not correct then 'ThisWorkbook.Close'!
 
I tried using the code:
MyFullName = ThisWorkbook.FullName
ActiveWorkbook.Close False

I'm not sure where I need to import the correct path. I have this in
the Auto_open sub.
 
I tried using the code:
MyFullName = ThisWorkbook.FullName
ActiveWorkbook.Close False

I'm not sure where I need to import the correct path. I have this in
the Auto_open sub.

You should know where the project is to be stored. It's not some value
that you retrieve somehow; it's a deliberately decided location.

You could store the correct path in a constant, the Registry, or a file
in the same folder as the project. In fact, you don't even need to
store the path because you could use a dummy file in the same folder
and check if that exists at startup. Users will not likely know that
this file is needed and so would copy/saveas the workbook only.
 
You should know where the project is to be stored. It's not some value
that you retrieve somehow; it's a deliberately decided location.

You could store the correct path in a constant, the Registry, or a file
in the same folder as the project. In fact, you don't even need to
store the path because you could use a dummy file in the same folder
and check if that exists at startup. Users will not likely know that
this file is needed and so would copy/saveas the workbook only.

--
Garry

Free usenet access athttp://www.eternal-september.org
ClassicVB Users Regroup! comp.lang.basic.visual.misc- Hide quoted text -

- Show quoted text -

I was able to use this code and it works great. It does check where
the file is stored and makes sure it matches up with where I want it
to be stored:

Private Sub Workbook_Open()
FullPath = ThisWorkbook.FullName
If FullPath <> "c:\test.xls" Then
MsgBox "This file can only be accessed from the server: " +
FullPath, vbExclamation, "Access Denied"
ActiveWorkbook.Close False
End If
End Sub

Thanks for your help.
 
Back
Top