Key takeaways
- Sapphire Business Technology built a Workforce Movement Control and Reporting System in Excel and VBA for a construction and engineering company with several worksites.
- The system brings employee tracking, project-based allocation, automated reports, an activity dashboard and scheduled movements into one file.
- The company now saves over 30 hours of administrative work per week across HR, project management and field operations.
- Agreeing the business rules in plain language, before any code, is what made the finished tool one people trust.

An employee allocation spreadsheet records where each employee works, linking every person to a specific project and worksite, and in construction it has to keep up with constant moves between sites, scheduled changes and automated reports.
In construction, people move between worksites all the time, and an employee allocation spreadsheet has to keep up with every move. When that information lives in several files, nobody can say with confidence who is on which site today. That was the problem a construction and engineering company brought to us.
The brief was clear. The company wanted one central Excel system to track and automate employee movements across its worksites. It needed a real-time view of who works where, accurate reports and far less manual admin. However, it did not want a new platform, a new subscription or a new login for every coordinator.
In this article
- Project snapshot
- Why a basic employee allocation spreadsheet fails on multiple sites
- Mapping the process before writing any code
- Building one employee allocation spreadsheet for every site
- Planning moves ahead instead of reacting to them
- The result: over 30 hours back every week
- How to build your own employee allocation spreadsheet: step by step
- Why Excel and VBA were enough here
- Need an employee allocation spreadsheet built around your sites?
So we built the Workforce Movement Control and Reporting System directly in Excel, powered by VBA. Below, we walk through the problem, the decisions behind the build and the result. Then we share a step-by-step guide you can use on your own workforce data.
Project snapshot
| Item | Detail |
|---|---|
| Industry | Construction and engineering |
| Solution | Workforce Movement Control and Reporting System |
| Tools | Excel and VBA |
| Timeline | Not stated in the case record |
| Departments | HR, Project Management, Field Operations |
| Impact | Over 30 hours of administrative work saved per week |
Why a basic employee allocation spreadsheet fails on multiple sites
A single site is easy to manage in a simple list. Several active sites are different. Each one has its own coordinator, its own headcount needs and its own pace. People move between them constantly, and every move changes more than one record.
At this company, the records of those moves were spread across separate files. When we collected the files already in circulation, it became clear that no single one held the full picture. As a result, two things were hard. Nobody could see where each person worked at any moment, and reliable reports took hours of manual work.
We see this pattern often. A control model designed for one site gets stretched across many, and nobody redesigns it along the way. In the end, the admin load falls on the people who should be managing the work, not typing it.
Still piecing together who works on which site from separate files? Tell us how your teams record moves today and our specialists will suggest a structure that fits.
Mapping the process before writing any code
Our first deliverable was not a new employee allocation spreadsheet. It was understanding.
We started with a recorded working session with the people who would use the system every day. During that session, we asked them to walk us through a normal week, including the parts that go wrong. Those details rarely appear in a written brief. Yet they decide whether a tool fits real life.
Next, we studied the client’s own model spreadsheet closely, because it held a lot of built-up logic, even in its messy form. The column names people already used, the abbreviations for each site and the way they classified roles all stayed. Familiarity is an asset. Throwing it away is the fastest route to a system nobody adopts.
Finally, we wrote down the business rules in plain language and asked the client to confirm them. Most teams skip this step. In our experience, though, it decides whether the finished tool earns trust or gets quietly abandoned.

Building one employee allocation spreadsheet for every site
With the rules agreed, we merged everything into one file. Copies no longer travel between machines, and everyone reads the same data. We also kept the structure simple on purpose. Simple structures survive years of daily use.
The system covers five core features:
- Employee tracking: one record of each employee and their current allocation.
- Project-based allocation: each allocation links a person to a specific project and worksite, not just to a general list.
- Programmed movement scheduling: coordinators can register a move before it happens.
- Automated reports: reports come straight from the recorded movements instead of being rebuilt by hand.
- Activity dashboard: a summary view of current allocations and activity across the sites.
VBA powers the interface. Buttons handle the most frequent actions, while data validation and dependent drop-down lists keep typing errors out. For example, a user picks a site name from a list instead of spelling it three different ways. The result is a custom Excel spreadsheet that behaves more like an app than a file. Yet it still opens in the software everyone at the company already knows.
Planning moves ahead instead of reacting to them
Programmed movement scheduling was the feature that changed daily behaviour the most. Before, a move only reached the employee allocation spreadsheet once it had already happened. Now a coordinator can log it in advance.
That small shift has a large effect. Project management can look ahead and spot gaps before they turn into problems on site. HR, in turn, can prepare for planned changes instead of reacting to them after the fact.
The automated reports and the activity dashboard build on the same data. The dashboard reads the same records that the entry screens write to. So there is only ever one version of the truth. That sounds obvious. Still, it is precisely what a folder of separate files can never deliver.
The result: over 30 hours back every week
The headline number is simple. The company recovered over 30 hours of administrative work per week across HR, project management and field operations. That time had gone into manual admin: keeping separate records aligned and building reports by hand. Now one employee allocation spreadsheet does that job.
To protect that gain, we also recorded a practical usability walkthrough for the client. It covers every function in the file, how the filters behave and what each button does. It also shows how to update the base tables and which mistakes break an update. In our experience, a short recorded guide is the cheapest way to keep a new system in use after handover.
Centralising workforce movements in a single Excel and VBA employee allocation spreadsheet saved a construction company over 30 hours of administrative work per week, according to Sapphire Business Technology.
How to build your own employee allocation spreadsheet: step by step
You do not need to start with code. These steps follow the same order we used on this project, and most of them need nothing more than standard Excel.
- Collect every file your team currently uses to record where people work, including personal copies kept by coordinators.
- Sit with the people who fill in those files and ask them to walk you through a normal week, including what goes wrong. Record the session so you can check details later.
- Write your business rules in plain language and get them confirmed, for example “one person can only have one allocation on any given date”.
- Create one table for employees and one for worksites or projects, and keep the names and abbreviations your team already uses.
- Set up a movements table where each line records who moves, from which site, to which site, and from what date.
- Replace free typing with drop-down lists, so every site and every employee has exactly one spelling.
- Decide how you will handle future moves. If most moves are known in advance, record a start date on each line and let your formulas count only allocations that are active today; if moves usually happen at short notice, prioritise a fast entry method over planning views.
- Decide where people will update the file. If coordinators work at a desk in desktop Excel, VBA buttons work well; if they need to update from a phone or a browser, plan a different front end, because VBA macros do not run in Excel for the web.
- Build a summary tab that counts people per site from the movements table, and never type those totals by hand.
- Before handover, record a short walkthrough video covering each button, the filters and how to update the base tables.
Why Excel and VBA were enough here
People often assume that a problem of this size needs dedicated workforce management software. Sometimes it does. In this case it did not, and the reasoning is worth sharing.
Excel was already installed, paid for and familiar to everyone who would use it. So the cost of adoption was close to zero. The company also needed logic shaped around its own movement types and approval rules, and ready-made tools rarely fit those.
Microsoft’s getting started guide to VBA in Office explains that VBA can do more than automate repetitive tasks. It can also add new features and guide users in ways that suit a specific business. That second use is what separates a macro from a system. Our addition is simple. The hard part is rarely the code itself; it is deciding what the code must refuse to do. After all, a control system that accepts bad input only produces neat, confident nonsense.
For that reason, the first layer of protection is plain Excel. Microsoft’s guide to applying data validation to cells shows how to restrict entries to a list and display an error message. VBA then adds the checks that validation alone cannot handle. Also, Microsoft confirms that you cannot run VBA macros in Excel for the web, which is why step 8 above matters for teams who work on site.
Need an employee allocation spreadsheet built around your sites?
The steps above will take a small team a long way. However, once you add scheduled moves, several teams and automated reports, the rules and the VBA code need careful design. Copying someone else’s template almost never fits, because every operation has its own movement logic, approval chain and vocabulary.
If your team still reconciles workforce files by hand, it may be time to hire Excel specialists who start with your process rather than with a template. Our custom Excel spreadsheet service builds systems like this one around the way your business actually runs.
Ready to keep every worksite in one file? Send us a short description of your sites, your movement types and the reports you need.
Frequently asked questions
What is an employee allocation spreadsheet?
Which tools did the system use?
What results did the company see?
Why agree the business rules before writing any code?
Can the VBA buttons be used from a phone or a browser?
This case study was written by Sapphire Business Technology, drawing on its experience with 500+ clients and 2,000+ projects in Excel, VBA, Power BI and Power Platform.




