- Embed an Excel spreadsheet on a web page
- Office Web Apps: Why they’re the clearer connection
- Windows SkyDrive gets better with Office Web Apps
In the last couple posts, we talked about how editing in Excel Web App works, how it’s different than editing in the Excel desktop client, and the kinds of things you can do in the Excel Web App. If you haven’t read about the editing experience yet, start with the Editing in Excel Web App – Part I post. Today I am going to cover how Excel Web App’s editing functionality enables easier collaboration on spreadsheets among multiple authors.
Collaborative editing: What’s that?
Picture this scenario: you’re thirty minutes away from a five o’clock deadline at work, and one of the last things you need to do is update a spreadsheet with the latest figures. You start Excel and attempt to load the spreadsheet, only to find out that someone else already has the file open. You are “locked out” of the spreadsheet, unable to complete your task. Worse yet (ok, I’m being a little dramatic here, but I know many out you will relate to this) the person that has the file open has left for the day and you have no way to edit the file before your deadline. You are stuck.
Does this story sound familiar to you? I know it does to me! With Excel Web App one of the goals we set out to achieve was to improve how multiple people work with and share spreadsheets. We wanted to build an experience where people could edit their spreadsheets without having to worry about the file being locked by someone else (unless exclusive access is what you desire, more on that in a moment). Authors can come and go as they please, multiple authors can be editing the same spreadsheet at the same time, and the Excel Web App manages all the changes.
How does it work?
Getting collaborative editing to work is really easy. There’s no switch to turn on, no special setting to enable. Basically, if two or more people have “edit” permissions on a file, then those people will be able to edit the file at any point, regardless of who is already editing. So, really, the only step to enable collaboration it to set the proper permissions on the file for those you want to grant “edit” access to (since permissions work differently whether you’re talking about SharePoint 2010 or Windows Live SkyDrive or SharePoint Online, I’m not going to go into those details here). Once the permissions are in place, you are all set!
The edits that other users make will appear in near “real time” on your screen. This means that, in most cases, you will see other people’s edits pretty much as they make them. There are exceptions to this rule, such as network issues, but in general that is the experience you should get.
There may be times when you want to ensure you are the only person editing a file. For those cases, SharePoint provides the ability to “checkout” files. When a file is checked out, it is locked for exclusive access by the person who initiated the checkout. This lock ensures exclusivity whether editing in the Excel desktop client or Excel Web App, and is persistent until the file is either checked in or the lock is released.
Lastly – this doesn’t have anything to do with how it works, but I’m getting it out of the way now because I know the question will come up if I don’t – the collaborative editing functionality is only a feature of Excel Web App. In other words, in order for the feature to work, everyone who wants to edit the spreadsheet must be editing via Excel Web App. In the 2010 release of Office, the Excel desktop client cannot participate in collaborative editing. I hope we can change that in a future release.
With collaborative editing, it is now possible for two or more people to edit a spreadsheet at the same time. So what happens if these authors are trying to edit the same cell or range of data? Generally speaking, Excel Web App takes a last-person-wins approach. This means that if John and Jane both type a value into cell A1 at roughly the same time, the submission that came in last, from the point of view of the Excel Web App server, is the value that both users will see. We tried to keep the model simple, something that would be easy for users to understand. And in talking to customers we found that many, if not most, collaborative scenarios don’t involve collaborators editing the same exact cells. Having said that, I would love to hear any thoughts you may have on your collaborative scenarios and how you’d like to see our handling of editing conflicts improve in the future.
With collaboration, editing a spreadsheet may never again be a solo experience (unless you want it to), so we felt it would be a good idea to let you know who else is editing the spreadsheet at the same time as you. For that, we added a little presence area at the bottom right of the editing window that tells you at a glance how many people currently have the file open for editing.
To see the list of names of all the editors in the spreadsheet, just click on the presence indicator and a window will pop up with the information.
Finally, when someone enters the file for editing, Excel Web App will alert you to this with a short message.
Interesting collaborative scenarios
To close off this post, I thought I would spur your imagination by talking about some interesting ways in which you can put Excel Web App’s collaborative features to use.
Data collection spreadsheets – need to collect data (e.g. financial figures, status, etc.) from multiple people into a single Excel spreadsheet? Create a sheet for each person who will be entering data, or any other method that works for you, and give each person write permissions to the file.
Monitor changes as they happen – if you need to regularly monitor information from one or more people, and that information changes throughout the day, have those people enter their status information into a spreadsheet, and you can just keep the file open and monitor changes as they happen.
Follow along in a meeting – I see a lot of meetings around here where what’s projected on the screen is a spreadsheet that displays status or information of some kind, and then throughout the meeting the spreadsheet is updated based on feedback from the other participants. With Excel Web App, other participants, both present or attending remotely, can follow along with the changes on their own laptops or even participate in making updates without having to commandeer the facilitator’s computer.
Programmatic collaboration – If you have Excel Services and Excel Web App installed together, you can use the Web Services API to programmatically edit spreadsheets at the same time that actual users are editing. Imagine a custom app that pumps data into a spreadsheet that others use as they work on the spreadsheet as well.
The goal of the collaboration work we did in Excel Web App was to remove the “locked file” experience from users’ workflow in collaborative scenarios and enable interesting new ways for people to work together around spreadsheets. There are still times when locking a file for exclusive access is the desired behavior, and SharePoint enables that through checkout. I look forward to hearing about your experiences using these features in your own work. If you have any feedback around how you’d like to see us improve this area going forward, feel free to leave us a comment.