T
Tymothé
Part 1
I have a spreadsheet that I want to open protected (locked). However, I want
to unlock a specific range for data entry based on the day of the actual
system date.
For example if today is 11/5/08 then we want to unlock row 5, specifically
cells B5:I5.
I have experimented with several functions, which return the desired
results, but I am not skilled enough to place them into a well-written VBA
subroutine.
Please note the following function examples that return the start and ending
cells of the desired range.
=ADDRESS(DAY(NOW()),2) this will display the start cell of the range (B5)
and=ADDRESS(DAY(NOW()),9) will display the last cell in the range (I5).
If anyone could assist with the writing of a subroutine that would select
the whole range, for example;
ADDRESS(DAY(NOW()),2).ADDRESS(DAY(NOW()),9).Select
That would be the first step to my solution.
Part 2
Tying it all together...
Once the range can be selected based on the system date, through code, then
the next task is to either unlock that range for editing or better yet,
utilize the menu command Tools, Protection, Protect and Share Workbook and
should read menu command Tools, Protection, Allow Users to Edit Ranges
So we can allow specific users based on their Active Directory Account to
edit a particular range.
However, at a minimum, opening the sheet unlocked (protected) and saving it
locked (protected) would work.
Thanks in advance for staying up at night working on this.
I have a spreadsheet that I want to open protected (locked). However, I want
to unlock a specific range for data entry based on the day of the actual
system date.
For example if today is 11/5/08 then we want to unlock row 5, specifically
cells B5:I5.
I have experimented with several functions, which return the desired
results, but I am not skilled enough to place them into a well-written VBA
subroutine.
Please note the following function examples that return the start and ending
cells of the desired range.
=ADDRESS(DAY(NOW()),2) this will display the start cell of the range (B5)
and=ADDRESS(DAY(NOW()),9) will display the last cell in the range (I5).
If anyone could assist with the writing of a subroutine that would select
the whole range, for example;
ADDRESS(DAY(NOW()),2).ADDRESS(DAY(NOW()),9).Select
That would be the first step to my solution.
Part 2
Tying it all together...
Once the range can be selected based on the system date, through code, then
the next task is to either unlock that range for editing or better yet,
utilize the menu command Tools, Protection, Protect and Share Workbook and
should read menu command Tools, Protection, Allow Users to Edit Ranges
So we can allow specific users based on their Active Directory Account to
edit a particular range.
However, at a minimum, opening the sheet unlocked (protected) and saving it
locked (protected) would work.
Thanks in advance for staying up at night working on this.