Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
Mia Mia is offline
external usenet poster
 
Posts: 101
Default Autostart macro-protect file

Hi,

I have written following code to protect my file from
beeing used from people who shouldent use it. The problem
I have is that you have to activate the macro when you
open the file to get it started, so it don't totaly work.
Do anyone know howe to solv this?

Private Sub Workbook_Open()
If Application.OrganizationName = "Min pc" Then

MsgBox "Hej " & Application.UserName

Else

Application.Quit

End If
End Sub
--

I would be wery grateful for yout help!
Best regards
Mia
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Autostart macro-protect file

The only effective way to keep people out of your workbook is to not share it
with them.

Anything that depends on a macro means that macros can be disabled--and it's not
too difficult to break into your code and just turn off the things that do the
checking.

You could give the workbook a nice password to open and only share the password
with trusted co-workers, but even those can be broken.

Mia wrote:

Hi,

I have written following code to protect my file from
beeing used from people who shouldent use it. The problem
I have is that you have to activate the macro when you
open the file to get it started, so it don't totaly work.
Do anyone know howe to solv this?

Private Sub Workbook_Open()
If Application.OrganizationName = "Min pc" Then

MsgBox "Hej " & Application.UserName

Else

Application.Quit

End If
End Sub
--

I would be wery grateful for yout help!
Best regards
Mia


--

Dave Peterson
  #3   Report Post  
Posted to microsoft.public.excel.programming
Mia Mia is offline
external usenet poster
 
Posts: 101
Default Autostart macro-protect file

Hi Dave,

I know that I can´t protect the files totaly.
Anyone as you say that are good i excel can open them,
but I want to protect them from "a normal" user.
I have some wery critical information regarding our
business that I don´t want to be spread outside our firm?

Do you know any way to do this automatic, for
example with a macro? If I can chose I dont
want a password.

--
Best regards
Mia


"Dave Peterson" skrev:

The only effective way to keep people out of your workbook is to not share it
with them.

Anything that depends on a macro means that macros can be disabled--and it's not
too difficult to break into your code and just turn off the things that do the
checking.

You could give the workbook a nice password to open and only share the password
with trusted co-workers, but even those can be broken.

Mia wrote:

Hi,

I have written following code to protect my file from
beeing used from people who shouldent use it. The problem
I have is that you have to activate the macro when you
open the file to get it started, so it don't totaly work.
Do anyone know howe to solv this?

Private Sub Workbook_Open()
If Application.OrganizationName = "Min pc" Then

MsgBox "Hej " & Application.UserName

Else

Application.Quit

End If
End Sub
--

I would be wery grateful for yout help!
Best regards
Mia


--

Dave Peterson

  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Autostart macro-protect file

You seem to know how to do it with a macro, but you also know that if macros are
disabled, then this won't work.

Harlan Grove recommended that you add a UDF (user defined function) that is
essentially a do nothing function. But if macros are disabled, then the UDF
will fail.

Then you include this function in very important formulas.

Option Explicit
Function iFunc() As Long
iFunc = 1
End Function


Then in an important/complex formula that returns a number:

=if(...)*someotherformula*ifunc()

If macros are disabled (and depending on the version of excel that the user is
using -- and the user hasn't changed any register settings!), then when the file
is opened with macros disabled, the function will return a #NAME? error.

If you do it in enough spots (and all that other stuff is still true), then you
may stop the user from being able to do anything with your workbook.


Mia wrote:

Hi Dave,

I know that I can´t protect the files totaly.
Anyone as you say that are good i excel can open them,
but I want to protect them from "a normal" user.
I have some wery critical information regarding our
business that I don´t want to be spread outside our firm?

Do you know any way to do this automatic, for
example with a macro? If I can chose I dont
want a password.

--
Best regards
Mia

"Dave Peterson" skrev:

The only effective way to keep people out of your workbook is to not share it
with them.

Anything that depends on a macro means that macros can be disabled--and it's not
too difficult to break into your code and just turn off the things that do the
checking.

You could give the workbook a nice password to open and only share the password
with trusted co-workers, but even those can be broken.

Mia wrote:

Hi,

I have written following code to protect my file from
beeing used from people who shouldent use it. The problem
I have is that you have to activate the macro when you
open the file to get it started, so it don't totaly work.
Do anyone know howe to solv this?

Private Sub Workbook_Open()
If Application.OrganizationName = "Min pc" Then

MsgBox "Hej " & Application.UserName

Else

Application.Quit

End If
End Sub
--

I would be wery grateful for yout help!
Best regards
Mia


--

Dave Peterson


--

Dave Peterson
  #5   Report Post  
Posted to microsoft.public.excel.programming
Mia Mia is offline
external usenet poster
 
Posts: 101
Default Autostart macro-protect file

Hello again,

You are right, I know how to do it with a macro and I know that if macros are
disabled, then this won't work.

I tried your formula bu I don´t get it right ( I´m not so god at this as you
are).
If I have my macro like this, how do I write to get it to work?

Private Sub Workbook_Open()
If Application.OrganizationName = "Min pc" Then

MsgBox "Hej " & Application.UserName

Else

Application.Quit

End If
End Sub

Do I have to write a complete new macro and where do I put it?

Thank you for your time!

--
Best regards
Mia


"Dave Peterson" skrev:

You seem to know how to do it with a macro, but you also know that if macros are
disabled, then this won't work.

Harlan Grove recommended that you add a UDF (user defined function) that is
essentially a do nothing function. But if macros are disabled, then the UDF
will fail.

Then you include this function in very important formulas.

Option Explicit
Function iFunc() As Long
iFunc = 1
End Function


Then in an important/complex formula that returns a number:

=if(...)*someotherformula*ifunc()

If macros are disabled (and depending on the version of excel that the user is
using -- and the user hasn't changed any register settings!), then when the file
is opened with macros disabled, the function will return a #NAME? error.

If you do it in enough spots (and all that other stuff is still true), then you
may stop the user from being able to do anything with your workbook.


Mia wrote:

Hi Dave,

I know that I can´t protect the files totaly.
Anyone as you say that are good i excel can open them,
but I want to protect them from "a normal" user.
I have some wery critical information regarding our
business that I don´t want to be spread outside our firm?

Do you know any way to do this automatic, for
example with a macro? If I can chose I dont
want a password.

--
Best regards
Mia

"Dave Peterson" skrev:

The only effective way to keep people out of your workbook is to not share it
with them.

Anything that depends on a macro means that macros can be disabled--and it's not
too difficult to break into your code and just turn off the things that do the
checking.

You could give the workbook a nice password to open and only share the password
with trusted co-workers, but even those can be broken.

Mia wrote:

Hi,

I have written following code to protect my file from
beeing used from people who shouldent use it. The problem
I have is that you have to activate the macro when you
open the file to get it started, so it don't totaly work.
Do anyone know howe to solv this?

Private Sub Workbook_Open()
If Application.OrganizationName = "Min pc" Then

MsgBox "Hej " & Application.UserName

Else

Application.Quit

End If
End Sub
--

I would be wery grateful for yout help!
Best regards
Mia

--

Dave Peterson


--

Dave Peterson



  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Autostart macro-protect file

The code looks ok to me, but you have to make sure it's in the right spot.

Open the VBE and make sure that code is under the ThisWorkbook module--not
anywhere else.

Then close excel (saving the test workbook) and reopen it with macros enabled to
test.

On the other hand, the UDF that I suggested before goes in a regular module
(insert|Module from within the VBE).

And at the same time, you'll need to make some changes to existing formulas that
return numbers:

=a1*31.323+b9*iFunc()

If you're new to macros:

Debra Dalgleish has some notes how to implement macros he
http://www.contextures.com/xlvba01.html

David McRitchie has an intro to macros:
http://www.mvps.org/dmcritchie/excel/getstarted.htm

Ron de Bruin's intro to macros:
http://www.rondebruin.nl/code.htm

(General, Regular and Standard modules all describe the same thing.)

Mia wrote:

Hello again,

You are right, I know how to do it with a macro and I know that if macros are
disabled, then this won't work.

I tried your formula bu I don´t get it right ( I´m not so god at this as you
are).
If I have my macro like this, how do I write to get it to work?

Private Sub Workbook_Open()
If Application.OrganizationName = "Min pc" Then

MsgBox "Hej " & Application.UserName

Else

Application.Quit

End If
End Sub

Do I have to write a complete new macro and where do I put it?

Thank you for your time!

--
Best regards
Mia

"Dave Peterson" skrev:

You seem to know how to do it with a macro, but you also know that if macros are
disabled, then this won't work.

Harlan Grove recommended that you add a UDF (user defined function) that is
essentially a do nothing function. But if macros are disabled, then the UDF
will fail.

Then you include this function in very important formulas.

Option Explicit
Function iFunc() As Long
iFunc = 1
End Function


Then in an important/complex formula that returns a number:

=if(...)*someotherformula*ifunc()

If macros are disabled (and depending on the version of excel that the user is
using -- and the user hasn't changed any register settings!), then when the file
is opened with macros disabled, the function will return a #NAME? error.

If you do it in enough spots (and all that other stuff is still true), then you
may stop the user from being able to do anything with your workbook.


Mia wrote:

Hi Dave,

I know that I can´t protect the files totaly.
Anyone as you say that are good i excel can open them,
but I want to protect them from "a normal" user.
I have some wery critical information regarding our
business that I don´t want to be spread outside our firm?

Do you know any way to do this automatic, for
example with a macro? If I can chose I dont
want a password.

--
Best regards
Mia

"Dave Peterson" skrev:

The only effective way to keep people out of your workbook is to not share it
with them.

Anything that depends on a macro means that macros can be disabled--and it's not
too difficult to break into your code and just turn off the things that do the
checking.

You could give the workbook a nice password to open and only share the password
with trusted co-workers, but even those can be broken.

Mia wrote:

Hi,

I have written following code to protect my file from
beeing used from people who shouldent use it. The problem
I have is that you have to activate the macro when you
open the file to get it started, so it don't totaly work.
Do anyone know howe to solv this?

Private Sub Workbook_Open()
If Application.OrganizationName = "Min pc" Then

MsgBox "Hej " & Application.UserName

Else

Application.Quit

End If
End Sub
--

I would be wery grateful for yout help!
Best regards
Mia

--

Dave Peterson


--

Dave Peterson


--

Dave Peterson
  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 2,836
Default Autostart macro-protect file

There is no way to be 100% certain that your work cant be
hacked, stolen, etc. However, Ive found that the following combination
(both #1 & #2 together) offers pretty good protection:

#1) Tools Protection Protect Sheet (or Protect Workbook), then enter a
Password.
#2) Tools Share Workbook Allow Changes.

If you really want to protect your data from users, you may be much better
off using Access for your app. Access security can be disabled as well, but
it is harder to do so.


Good luck,
Ryan---


--
Ryan---
If this information was helpful, please indicate this by clicking ''Yes''.


"Dave Peterson" wrote:

The code looks ok to me, but you have to make sure it's in the right spot.

Open the VBE and make sure that code is under the ThisWorkbook module--not
anywhere else.

Then close excel (saving the test workbook) and reopen it with macros enabled to
test.

On the other hand, the UDF that I suggested before goes in a regular module
(insert|Module from within the VBE).

And at the same time, you'll need to make some changes to existing formulas that
return numbers:

=a1*31.323+b9*iFunc()

If you're new to macros:

Debra Dalgleish has some notes how to implement macros he
http://www.contextures.com/xlvba01.html

David McRitchie has an intro to macros:
http://www.mvps.org/dmcritchie/excel/getstarted.htm

Ron de Bruin's intro to macros:
http://www.rondebruin.nl/code.htm

(General, Regular and Standard modules all describe the same thing.)

Mia wrote:

Hello again,

You are right, I know how to do it with a macro and I know that if macros are
disabled, then this won't work.

I tried your formula bu I don´t get it right ( I´m not so god at this as you
are).
If I have my macro like this, how do I write to get it to work?

Private Sub Workbook_Open()
If Application.OrganizationName = "Min pc" Then

MsgBox "Hej " & Application.UserName

Else

Application.Quit

End If
End Sub

Do I have to write a complete new macro and where do I put it?

Thank you for your time!

--
Best regards
Mia

"Dave Peterson" skrev:

You seem to know how to do it with a macro, but you also know that if macros are
disabled, then this won't work.

Harlan Grove recommended that you add a UDF (user defined function) that is
essentially a do nothing function. But if macros are disabled, then the UDF
will fail.

Then you include this function in very important formulas.

Option Explicit
Function iFunc() As Long
iFunc = 1
End Function


Then in an important/complex formula that returns a number:

=if(...)*someotherformula*ifunc()

If macros are disabled (and depending on the version of excel that the user is
using -- and the user hasn't changed any register settings!), then when the file
is opened with macros disabled, the function will return a #NAME? error.

If you do it in enough spots (and all that other stuff is still true), then you
may stop the user from being able to do anything with your workbook.


Mia wrote:

Hi Dave,

I know that I canÀšÃ‚´t protect the files totaly.
Anyone as you say that are good i excel can open them,
but I want to protect them from "a normal" user.
I have some wery critical information regarding our
business that I donÀšÃ‚´t want to be spread outside our firm?

Do you know any way to do this automatic, for
example with a macro? If I can chose I dont
want a password.

--
Best regards
Mia

"Dave Peterson" skrev:

The only effective way to keep people out of your workbook is to not share it
with them.

Anything that depends on a macro means that macros can be disabled--and it's not
too difficult to break into your code and just turn off the things that do the
checking.

You could give the workbook a nice password to open and only share the password
with trusted co-workers, but even those can be broken.

Mia wrote:

Hi,

I have written following code to protect my file from
beeing used from people who shouldent use it. The problem
I have is that you have to activate the macro when you
open the file to get it started, so it don't totaly work.
Do anyone know howe to solv this?

Private Sub Workbook_Open()
If Application.OrganizationName = "Min pc" Then

MsgBox "Hej " & Application.UserName

Else

Application.Quit

End If
End Sub
--

I would be wery grateful for yout help!
Best regards
Mia

--

Dave Peterson


--

Dave Peterson


--

Dave Peterson

  #8   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Autostart macro-protect file

#1. This kind of worksheet and workbook protection is really simple to break.
I wouldn't trust it at all.

#2. I don't understand how sharing a workbook would add any level of
protection. And there are so many features that are unavailable when the
workbook is shared, that many don't use it (and others avoid it because of its
reputation of corrupting workbooks).



ryguy7272 wrote:

There is no way to be 100% certain that your work cant be
hacked, stolen, etc. However, Ive found that the following combination
(both #1 & #2 together) offers pretty good protection:

#1) Tools Protection Protect Sheet (or Protect Workbook), then enter a
Password.
#2) Tools Share Workbook Allow Changes.

If you really want to protect your data from users, you may be much better
off using Access for your app. Access security can be disabled as well, but
it is harder to do so.

Good luck,
Ryan---

--
Ryan---
If this information was helpful, please indicate this by clicking ''Yes''.

"Dave Peterson" wrote:

The code looks ok to me, but you have to make sure it's in the right spot.

Open the VBE and make sure that code is under the ThisWorkbook module--not
anywhere else.

Then close excel (saving the test workbook) and reopen it with macros enabled to
test.

On the other hand, the UDF that I suggested before goes in a regular module
(insert|Module from within the VBE).

And at the same time, you'll need to make some changes to existing formulas that
return numbers:

=a1*31.323+b9*iFunc()

If you're new to macros:

Debra Dalgleish has some notes how to implement macros he
http://www.contextures.com/xlvba01.html

David McRitchie has an intro to macros:
http://www.mvps.org/dmcritchie/excel/getstarted.htm

Ron de Bruin's intro to macros:
http://www.rondebruin.nl/code.htm

(General, Regular and Standard modules all describe the same thing.)

Mia wrote:

Hello again,

You are right, I know how to do it with a macro and I know that if macros are
disabled, then this won't work.

I tried your formula bu I don´t get it right ( I´m not so god at this as you
are).
If I have my macro like this, how do I write to get it to work?

Private Sub Workbook_Open()
If Application.OrganizationName = "Min pc" Then

MsgBox "Hej " & Application.UserName

Else

Application.Quit

End If
End Sub

Do I have to write a complete new macro and where do I put it?

Thank you for your time!

--
Best regards
Mia

"Dave Peterson" skrev:

You seem to know how to do it with a macro, but you also know that if macros are
disabled, then this won't work.

Harlan Grove recommended that you add a UDF (user defined function) that is
essentially a do nothing function. But if macros are disabled, then the UDF
will fail.

Then you include this function in very important formulas.

Option Explicit
Function iFunc() As Long
iFunc = 1
End Function


Then in an important/complex formula that returns a number:

=if(...)*someotherformula*ifunc()

If macros are disabled (and depending on the version of excel that the user is
using -- and the user hasn't changed any register settings!), then when the file
is opened with macros disabled, the function will return a #NAME? error.

If you do it in enough spots (and all that other stuff is still true), then you
may stop the user from being able to do anything with your workbook.


Mia wrote:

Hi Dave,

I know that I canÀšÃ‚´t protect the files totaly.
Anyone as you say that are good i excel can open them,
but I want to protect them from "a normal" user.
I have some wery critical information regarding our
business that I donÀšÃ‚´t want to be spread outside our firm?

Do you know any way to do this automatic, for
example with a macro? If I can chose I dont
want a password.

--
Best regards
Mia

"Dave Peterson" skrev:

The only effective way to keep people out of your workbook is to not share it
with them.

Anything that depends on a macro means that macros can be disabled--and it's not
too difficult to break into your code and just turn off the things that do the
checking.

You could give the workbook a nice password to open and only share the password
with trusted co-workers, but even those can be broken.

Mia wrote:

Hi,

I have written following code to protect my file from
beeing used from people who shouldent use it. The problem
I have is that you have to activate the macro when you
open the file to get it started, so it don't totaly work.
Do anyone know howe to solv this?

Private Sub Workbook_Open()
If Application.OrganizationName = "Min pc" Then

MsgBox "Hej " & Application.UserName

Else

Application.Quit

End If
End Sub
--

I would be wery grateful for yout help!
Best regards
Mia

--

Dave Peterson


--

Dave Peterson


--

Dave Peterson


--

Dave Peterson
Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Autostart Macro McCloudK Excel Discussion (Misc queries) 5 November 22nd 07 09:38 PM
Autostart Alias Excel Discussion (Misc queries) 2 December 8th 05 02:43 AM
macro to password protect exel file anelh6 Excel Programming 1 October 25th 05 01:31 AM
Trying to protect output file with Macro Vasant Nanavati Excel Programming 0 June 2nd 04 01:23 AM
Autostart syale Excel Programming 1 January 29th 04 02:07 AM


All times are GMT +1. The time now is 11:50 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"