Expiry of MS Excel file

S

Som

after a certain date(date will provided by the user) a password protected MS
excel file will not open with valid password OR the data of the said file
will be erased OR file will be corrupted .In one sentence , after a certain
date(date will provided by the user) a password protected MS excel file will
be destroyed in any form ??? (even if the 2nd line user copies (n number of
copies) the file to their own PCs also from our PC).I require this option for
some copyright / licence issue... Can u please help me?
 
J

Jacob Skaria

Hi Som

You need write a piece of code. From the menu go to
Tools-->Macro-->Visual Basic Editor-->
Select Worksheet and copy the below code

Private Sub Workbook_Open()
If DateDiff("d","12/Mar/2009",Date) < -1 Then
Application.ActiveWorkbook.Close
End If
End Sub

This will only allow the workbook to be used upto Mar 12th. Password protect
the Visual Basic Editor before you distribute.

Jacob Skaria
(If this post is helpful please click Yes)
 
S

Som

No ,

it is not working...!!!!!!

I've given 11 march 2009

but it is openning......!!!!!!

one thing , I want to inform that here in my office by default MS Excel
Macro Security is 'VERY HIGH'.....

is this creating the problem?

*** how to give different password in MS Excel VB editor?
 
B

Bob I

That is because 11 march 2009 is BEFORE "12/Mar/2009", It is supposed to
open. try "13 march 2009" instead.
 
S

Som

No boss, it is not working.....!!!!!!!!

how this macro will run ? auto? i think there is some problem

my mail id is (e-mail address removed)

can u pls send me atest mail , so that i can send u the file with i have
done...
 
S

Som

My code----

=====================
Private Sub Workbook_Open()
MsgBox "Ok"
MsgBox DateDiff("d", "10/Mar/2009", Date)
If DateDiff("d", "10/Mar/2009", Date) < 1 Then
MsgBox "Ok1"
Application.ActiveWorkbook.Close
End If
MsgBox "Ok2"
End Sub
======================================

result of manual run of MS VB macro

msg box ok coming
msg box 2 coming
msg box ok1 not coming
msg box ok2 coming

how to run the macro automatically
 
S

Som

my new code--------


===============================================+


Private Sub Workbook_Open()
MsgBox "Ok"
MsgBox DateDiff("d", "10/Mar/2009", Date)
If DateDiff("d", "10/Mar/2009", Date) > 1 Then
MsgBox "Ok1"
Application.ActiveWorkbook.Close
End If
MsgBox "Ok2"
End Sub

==================================================

it is working ....... it should be greater than not less than !!!!!!!!!
 
B

Bob I

Change the less than to greater than

If DateDiff("d", "10/Mar/2009", Date) > 1 Then
--------------------------------------^
 
S

Som

no it failed again in another PC....

because by default in my company , the macro level set very high... so it is
not running in other PCs

msg comnig -- " Macros are disabled because the security level is set very
high. To run the macros , change the security level to a lower setting and
verify the macros are signed & trusted"

, now what to do ??

i cann't change all PC s macro security setting of client location....

so i have to do the job keeping in my mind that " macro security will be
high "

now pls advise
 
S

Som

bob,

pls give me your mail id , my mail id is (e-mail address removed)


pls see my new replies in this post.... it is running now , but it is giving
new problem
 
B

Bob I

Nope, i don't share mail IDs. Also if you aren't allowed to run macros,
how do you expect macros to perform the desired effect?
 
S

Som

OK ,

can u give me a code which will delete the excel file permanently if
somebody tries to open the file after the specified date ?

how to protect the code in the MS VB editor for macro , so that nobody can
see the code before expiry date / deletion date.
 
S

Som

dear all,

thanks for your involvement .

now the file is deleting if macro runs ....

1. how protect / encrypt the code.

2. next concern is Macro security is by default HIGH , I cann't give up !!!!
pls help me find out the way..... is there any option that wherever the file
will be openned the Macro security will be changed to LOW ??

3. is there anyother way apart from Macro to do the same?

I need to complete the job

waiting.......
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top