Why training records end up in a spreadsheet
Almost nobody sets out to track training in Excel. It happens because the material itself is easy to store and the facts around it are not. A folder holds the slide deck perfectly well; what it cannot tell you is who was supposed to read it, who has, which version they saw, and whose forklift certificate expires in three weeks. So someone builds a spreadsheet to hold those facts, and from that day the spreadsheet is the system — maintained by hand, known to one person, and quietly wrong about a third of the time. This build closes that gap on the Microsoft 365 licenses you already pay for, rather than on a separate platform with its own seats and its own login.
It is a narrower engagement than our general SharePoint intranet and document management consulting, which designs the information architecture for a whole company’s content. Here there is one named system, one named owner in HR, operations or safety, and a scope that ends at a working training platform with assignment, tracking, quizzing and expiry reminders around it. And it is deliberately not a course-authoring engagement: we build the machinery, your subject-matter experts keep writing the courses, which is the boundary that makes a fixed price honest.
What the system is actually made of
Nothing here is exotic, and that is the point — every part is a standard Microsoft 365 component your administrators can already support, assembled deliberately rather than accumulated. The fields on each course are what make the rest possible: in SharePoint they are columns on a content type, and Microsoft’s guidance on adding columns to a content type (opens in new tab) covers the mechanics, including making a column required so a course cannot be published half-described.
| Part |
What it does for you |
How it is built |
| Course library |
Holds the material each course is made of — documents, decks, recorded video, links — as courses rather than as loose files |
A SharePoint document library with a course content type carrying code, title, owner, audience, version and retirement date |
| Course catalogue |
The list people browse and managers assign from, so nobody has to know a folder path |
A SharePoint list with one item per course, surfaced on a training site page alongside search |
| Role curricula |
Decides who has to take what without anyone maintaining a list of names |
Microsoft 365 or security groups that already describe job roles, mapped to a required course set per role |
| Completion record |
Proves a named person completed a named course version on a date, and survives that person’s manager leaving |
A SharePoint list written by the flow rather than typed by hand, with the version stamped at the moment of completion |
| Knowledge check |
Distinguishes reading the procedure from opening the file |
A Microsoft Forms quiz with scored answers, its result written back onto the completion record |
| Assignment and reminder flows |
Assigns on joining or changing role, chases what is outstanding, warns before a certification expires |
Power Automate cloud flows on a schedule, with the escalation path agreed rather than assumed |
| Reporting |
Answers “who on my team is overdue” day to day, and “where are we exposed” for leadership |
Filtered SharePoint views for managers; a Power BI report where the question spans sites or years |
Two fields do more work than the rest and both are usually missing from the spreadsheet they replace: the course version and the expiry date. Without a version, a completion record cannot survive the day the procedure changes, because nobody can tell who took the old one. Without an expiry stored as a date the system can calculate with, every renewal depends on a human remembering, which is exactly the failure the build exists to remove.
Assigning by role, and chasing what is overdue
The assignment model is where these builds are won or lost. Assigning training to named individuals works for a month and then decays, because people join, leave and change jobs faster than anybody updates a list. Assigning to roles — and letting the groups that already exist in your tenant define those roles — means a new supervisor inherits the supervisor curriculum on the day their group membership changes, with nobody in the loop.
The chasing is mechanically simple and its judgement is all in the design. It is a scheduled cloud flow, running on a recurrence you configure in Power Automate (opens in new tab), that reads the outstanding assignments and the expiry dates and acts on whatever falls inside the warning window. What we settle with you is the part no documentation can answer: how far ahead the first notice goes out, whether there is a second and a third, when a manager is copied, and what happens when somebody is overdue on a course their role no longer requires. If approval routing around all this is unfamiliar, our guide to replacing email approvals with Power Automate covers the mechanics we deliberately do not repeat here, and broader process automation beyond training is the remit of our Power Automate consulting engagement.
One production note worth insisting on: the flows’ connections should be owned by a service account rather than by whoever built them, so the reminders survive that person leaving. It is a five-minute decision at build time and a silent outage nine months later if it is skipped.
What a completion record has to prove
A useful completion record answers four questions without anyone reconstructing them: who, which course, which version, and when. Attendance alone answers none of them convincingly, which is why most companies want a short scored check at the end of anything that matters. Microsoft Forms handles that natively — Microsoft’s guidance on creating a quiz with Microsoft Forms (opens in new tab) covers marking correct answers, assigning points, and the real-time results view — and the build’s contribution is writing that outcome back onto the completion record so the score lives with the person and the version rather than inside a form’s response list.
There is a boundary here worth stating plainly, because it is the one place this page touches another. Evidence that a person was trained on a procedure lives in this system. Evidence that the procedure itself was drafted, approved, issued and superseded correctly lives in a controlled document library, which is a stricter build with a different audience — an external auditor rather than a manager — and is what our SharePoint ISO 9001 document control engagement configures. Companies that need both usually build the document control first and point this system’s courses at the controlled revisions.
Where Viva Learning fits, and where it does not
Ask about training in Microsoft 365 and Viva Learning comes up within a minute, so it is worth being precise about what it is. Microsoft describes Viva Learning (opens in new tab) as a centralized learning hub inside Microsoft Teams where people discover, share and recommend content from your organization and from partners, and where managers can recommend content and track the reported completion status of what they recommended. It is a discovery and recommendation experience, and a good one.
It also reads from SharePoint, which is why the two belong together rather than in competition. Microsoft’s instructions for adding SharePoint as a learning content source (opens in new tab) set out how a knowledge admin points the Learning Service at curated folders, which document types are ingested — Word, PowerPoint, Excel, PDF, audio, video and linked objects — and three constraints worth knowing before you plan around it: content changes appear within about 24 hours rather than instantly, Viva Learning ingests up to 1,000 files as learning objects without a Viva Suite or Viva Learning license, and it honours Microsoft 365 and security group permissions only, skipping files whose access is set per user.
So the honest division of labour is this: Viva Learning is where people find and consume the material in the flow of their day; the system on this page is where the requirement, the record, the score and the expiry live. If your company already licenses Viva and its recommendation model covers your needs, we will say so and scope a smaller build around the records. That conversation happens during scoping, when it is still free to change your mind.
When a dedicated LMS is the better buy
A real category of learning platforms exists, several of them sold specifically as SharePoint or Microsoft 365 add-ons, and for some companies they are the right purchase. We would rather draw that line than argue past it. The cost shapes differ more than the features do: a dedicated platform is a recurring per-user subscription that keeps pace with your headcount, while this is a one-time build on licenses you already hold and continue to pay for anyway. Neither shape is automatically cheaper, but they fail in different directions — and the requirements below, not the invoice, are what should decide it.
| If this describes you |
The honest answer |
| You need to run purchased SCORM or xAPI course packages from a content vendor |
Buy a dedicated LMS. SharePoint and Forms do not play those packages or consume their tracking data, and faking it is worse than licensing a platform that does it properly |
| You need graded formal assessments or proctored certification exams with a defensible pass mark |
Buy. A Forms quiz is a knowledge check, not an examination system, and we will not pretend otherwise on a page you might show an auditor |
| You need sophisticated sequencing — prerequisites, learning paths that unlock in order, branching by answer |
Buy, or scope something considerably larger than this engagement with clear eyes about what it will take to build and maintain |
| You need deep learning analytics across cohorts, skills and time, as a product capability rather than a report |
Buy. You can report on completion and expiry well from this build, but skills analytics as a native capability is a different kind of product |
| You mainly need required reading assigned by role, a completion record, a short check, and a warning before a certification expires |
Build it here. This is the common case, and it runs on licenses you already hold with no new vendor, no new login and no per-seat cost |
| You are not sure yet, and training currently lives in a folder and a spreadsheet |
Build this first. It stands up faster, and the curriculum discipline it forces is exactly the requirements document you would need before buying anything else |
Who this fits, and who it does not
The usual fit is a company of roughly 20 to 500 people already on Microsoft 365, running its own required training — safety, compliance, equipment, policy acknowledgement, role onboarding — where one person in HR, operations or safety has inherited the job of knowing who has done what. The trigger is almost always specific: a customer or insurer asking for training records at short notice, an audit finding, a near miss involving someone whose refresher had lapsed, or a departure that took the only reliable copy of the tracker with it.
It fits badly in two cases, and we will say so at the consultation rather than after. If nobody will own the system, it decays exactly like the spreadsheet it replaced, and the honest first step is settling the ownership question. And if you are expecting us to produce the training content itself — write the courses, record the videos, act as your L&D function — that is not what this is; we build the system that carries your experts’ material, in the same way a document control build never writes the quality manual.
Everything produced is yours from day one: the library, the lists, the flows, the quizzes and the documentation live in your own Microsoft 365 tenant, never in ours. It is ordinary SharePoint, Forms and Power Automate, so any competent Microsoft partner — or your own team, after the walkthrough — can change it later without us. Where leadership wants training exposure reported alongside everything else it watches, that is a reporting build rather than a longer list, and our fixed-fee Power BI dashboards pick it up from the same lists. How the fixed fee is set and what is locked before work starts is spelled out on our fixed-fee process page.