How can I track users who access a spreadsheet?

J

jBen

Is there a way to track users who access a spreadsheet that I have created,
by the user name and time they have accessed the spreadsheet? It is a
password protected spreadsheet.
 
B

Bob I

You would have to do it with some sort of macro running in the
background to record and save that kind of information.
 
Z

ZephanS

SUMMARY:
If you have network and separate user accounts then I'd just enable "Track
Changes" feature (#2 ADVANCED).
If everyone is logged in or using same user account then I'd develop a
user+password sign-in macro that appears OnLoad (each time workbook is
opened) (#3 EXPERT/DEVELOPER).


MORE INFORMATION
------------------------
There is no easy way to enforce change tracking. This is specially true if
file is accessed by different people using same user account (such as from
same PC with no requirement to login as different users). Below are the
options I can think of with my comments. Others are welcome to comment on
these #1 - #4 or add other solutions.

#1 (INTERMEDIATE): Voluntary change tracking
1. Create new worksheet named "TRACKING" as first worksheet in the workbook.
2. Write instructions how you want all users to enter their usage information.
3. Always close workbook after moving to "Tracking" worksheet so it always
appears when workbook is opened.
4. Trust (and pray) all users follow the instructions. Good luck (You'll
need it).


#2: (ADVANCED): "Track Changes" feature (requires network and user accounts)
Read help or related info on the "Change Tracking" or "Track Changes"
feature (Excel 2003 and later). If you can share your Excel workbook then you
can enable "Track Changes" feature.
1. Save file on a network fileshare or SharePoint server
2. Open file with Excel, then set Review->Share Workbook (Excel 2007)
3. Enable Review->Track Changes and related settings you need/want.
Change tracking gives fine grain detail on who changed what cells and when.
Wonderful stuff if your network and users are set up to meet the sharing
requirements.


#3 (EXPERT/DEVELOPER): As mentioned by Bob I, If everyone is opening this
file with same user account then you'll need to make a macro (or more likely
develop Excel VBA code) to pop-up a custom sign-in dialog that adds a row to
a protected change tracking form. I did this very successfully for an Access
database application to implement record-level change tracking (about 8 years
ago).

TIP: You might be able to programmatically retrieve username and machinename
from the OS environmental variables. look up COMPUTERNAME and USERNAME and
environment for more info.


#4 (MASTER): NTFS File System journal entries
Another possible solution is to track access and modifications at file
system level. Windows Server 2003 and later, Vista, (and XP with
modifications) can keep a log of file activity. It really helps to have
different user accounts accessing, otherwise you are limited to just getting
date/time entry each time someone accesses or modifies the file. Read OS File
system help for help implementing this type of tracking.

Hope this helps. Sorry I can't provide a fully functioning sample or code
fragments to help further.
 

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