The problem is going to be having multiple users updating the same workbook at the same time, even if they are working on separate worksheets. Does the MasterSheet have to be updated in real-time or can it be done like at end of day? I would start out approaching it as 56 separate workbooks (1 for each user) that have the same VBA. These would then update the Master workbook like a database. This would remove the frustration of having multiuser access/update of the same workbook; plus it would isolate the data of each user from the others. This is not a trivial exercise but I have done similar things so it is doable.
When the MasterSheet is updated, does it have to pass information (like summary information) back to the users in real-time?