There are many things you can do if you think about it for a while. If
you use VBA, check the current date, and if the date is greater than
some preset date, exit the workbook.
Of course, if it was me, I would then load the workbook, disabling the
macros, and hack the date/do not execute that bit of code. And password
protecting the VBA code is not secure either, very easy to hack.
It depends on the skill level of your user. Excel is not a secure
platform, never designed to be one.
You might want to look at Microcosm. They supply CopyControl (has now
been superseded, but I have not yet upgraded). But both programs can
make an Excel file secure, with some VBA code that looks whether an
external file is of valid state or not (the state set by expiry date, or
coded to a specific PC's hardware).
Very elegant, and on my development version, I have disabled the Call to
this procedure. Even in the distribution version, I do not use it
anymore. My VBA password is around 50 characters, and it takes me very
little time to crack it using a freeware utility.
So, after all that: Dependent on your users, but I would not even bother
with anything more than a simple password.