ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   How do I limit the number of times an Excel workbook can be opene. (https://www.excelbanter.com/excel-discussion-misc-queries/4165-how-do-i-limit-number-times-excel-workbook-can-opene.html)

Chris

How do I limit the number of times an Excel workbook can be opene.
 
I have a workbook that I send out to third parties, I want to limit its use
either by time or number of times opened- is this possible? I want to guard
against out of date data being in circulation.

galimi

Chris,

You can add a sheet and then make it "Very Hidden" with the use of VBA.
Each time the workbook is opened, you can increase a counter, or check the
atomic date/time via the web and compare it against variables stored on this
"Very Hidden" sheet.

http://www.ingenio.com/categories/ca...sp?sid=5228306

"Chris" wrote:

I have a workbook that I send out to third parties, I want to limit its use
either by time or number of times opened- is this possible? I want to guard
against out of date data being in circulation.



in the on open event you can put a timer
if date()=now()+30 then
sheets("sheet1").select
cells.select
Selection.ClearContents
end if
range("A1").formulaR1C1 = "the data in this file has been
delete because it is out of date."
classic virus

-----Original Message-----
I have a workbook that I send out to third parties, I

want to limit its use
either by time or number of times opened- is this

possible? I want to guard
against out of date data being in circulation.
.



hi again,
follow up:
this code will delete all data in the file after 30 days
you can add more sheets if you need. you can
increase/decrease the number of days if you like.

-----Original Message-----
in the on open event you can put a timer
if date()=now()+30 then
sheets("sheet1").select
cells.select
Selection.ClearContents
end if
range("A1").formulaR1C1 = "the data in this file has been
delete because it is out of date."
classic virus

-----Original Message-----
I have a workbook that I send out to third parties, I

want to limit its use
either by time or number of times opened- is this

possible? I want to guard
against out of date data being in circulation.
.

.


JE McGimpsey

This will never fire, since Date will never equal Now + 30.

Instead of Now, you'd have to use a fixed date.

I'd also suggest that, in most cases, deleting the data from a third
party's machine is not a smart idea.


In article ,
wrote:

in the on open event you can put a timer
if date()=now()+30 then
sheets("sheet1").select
cells.select
Selection.ClearContents
end if
range("A1").formulaR1C1 = "the data in this file has been
delete because it is out of date."
classic virus



hi again,
thanks for catching that. it should be
if date = now()+30 then
....
had a mind blip there.
and you are right. not a good idea. but it's not my
request. and a messge was display to explain.
I should have added to the message the the user should
delete the file since it is not longer useful and to see
the author of more up to date data.
he has options. others posted too. I didn't think of the
very hidden idea. that might be better. but it still does
the same thing. takes away the data and make the file
useless to the user. what is the difference?

-----Original Message-----
This will never fire, since Date will never equal Now +

30.

Instead of Now, you'd have to use a fixed date.

I'd also suggest that, in most cases, deleting the data

from a third
party's machine is not a smart idea.


In article ,
wrote:

in the on open event you can put a timer
if date()=now()+30 then
sheets("sheet1").select
cells.select
Selection.ClearContents
end if
range("A1").formulaR1C1 = "the data in this file has

been
delete because it is out of date."
classic virus

.



I don't know what is wrong with me today. I guess i am
still upset about Frank Kabel.
you are right. a hard date would be needed.
Date = #1/18/05# + 30 then
sorry about that.

-----Original Message-----
hi again,
thanks for catching that. it should be
if date = now()+30 then
....
had a mind blip there.
and you are right. not a good idea. but it's not my
request. and a messge was display to explain.
I should have added to the message the the user should
delete the file since it is not longer useful and to see
the author of more up to date data.
he has options. others posted too. I didn't think of the
very hidden idea. that might be better. but it still does
the same thing. takes away the data and make the file
useless to the user. what is the difference?

-----Original Message-----
This will never fire, since Date will never equal Now +

30.

Instead of Now, you'd have to use a fixed date.

I'd also suggest that, in most cases, deleting the data

from a third
party's machine is not a smart idea.


In article ,
wrote:

in the on open event you can put a timer
if date()=now()+30 then
sheets("sheet1").select
cells.select
Selection.ClearContents
end if
range("A1").formulaR1C1 = "the data in this file has

been
delete because it is out of date."
classic virus

.

.


Chris

thanks guys, I cant claim to understand how to achieve it right now but I am
now looking in the right direction and will have a go! any more ideas -
especially those more closely related to my ability - greatfully recieved.

" wrote:

I don't know what is wrong with me today. I guess i am
still upset about Frank Kabel.
you are right. a hard date would be needed.
Date = #1/18/05# + 30 then
sorry about that.

-----Original Message-----
hi again,
thanks for catching that. it should be
if date = now()+30 then
....
had a mind blip there.
and you are right. not a good idea. but it's not my
request. and a messge was display to explain.
I should have added to the message the the user should
delete the file since it is not longer useful and to see
the author of more up to date data.
he has options. others posted too. I didn't think of the
very hidden idea. that might be better. but it still does
the same thing. takes away the data and make the file
useless to the user. what is the difference?

-----Original Message-----
This will never fire, since Date will never equal Now +

30.

Instead of Now, you'd have to use a fixed date.

I'd also suggest that, in most cases, deleting the data

from a third
party's machine is not a smart idea.


In article ,
wrote:

in the on open event you can put a timer
if date()=now()+30 then
sheets("sheet1").select
cells.select
Selection.ClearContents
end if
range("A1").formulaR1C1 = "the data in this file has

been
delete because it is out of date."
classic virus
.

.



JE McGimpsey

You should realize that nothing you do will absolutely prevent a
somewhat educated user from opening or using your workbook after the
time you specify.

Using a macro is an OK idea, but if the user doesn't enable macros
(e.g., has XL's security level set to High), the macro will never fire.
A frequent suggestion is to hide your data sheet, leaving a sheet
exposed that tells the user to enable macros. Then in the Workbook_Open
event, unhide the data sheet and hide the "splash" sheet. This also
requires that you hide the data sheet in the Workbook_BeforeSave() event
(or try to prevent saving altogether).

And of course, nothing would prevent a user from copying your data and
pasting it into an unprotected workbook.



In article ,
"Chris" wrote:

thanks guys, I cant claim to understand how to achieve it right now but I am
now looking in the right direction and will have a go! any more ideas -
especially those more closely related to my ability - greatfully recieved.



All times are GMT +1. The time now is 01:18 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com