Build an Auto-Updating Leave Request Tracker with Power Automate, Microsoft Forms, and Excel Online

Managing leave requests can quickly become messy if you rely only on emails, phone calls, or scattered notes. Have you ever lost track of who approved what, or struggled to update a spreadsheet after every new request? These small tasks can pile up, causing delays and unnecessary back-and-forth between employees and managers.

That’s where automation comes in. With Microsoft Forms, Excel Online, and Power Automate, you can create a leave approval system that updates itself. Employees submit a request, managers approve or reject it with a single click, and Excel automatically reflects the latest status. No more manual edits, no confusion — just a smooth process that keeps everyone on the same page.

What you’ll build

With this process, you’re going to design a complete leave approval system that works quietly in the background. Every request submitted through Microsoft Forms will automatically appear in an Excel Online table. From there, Power Automate will send an approval card to a manager, update the Leave Status to either Approved or Rejected, and instantly notify the requester by email. Imagine the convenience of having a single sheet where statuses update by themselves without any manual effort — wouldn’t that save your team countless follow-ups?

Who this is for

This solution is designed for anyone who wants an easy and reliable way to handle leave requests without relying on complicated software. HR teams and small businesses can use it to streamline approvals without hiring a developer. Project leads will find it helpful for managing team availability at a glance. And if you prefer Excel Online as your system of record, this setup lets you keep everything in one familiar place while making the workflow smarter.

What you need

To get started, you’ll only need the tools already included with most Microsoft 365 subscriptions. You’ll use Microsoft Forms to collect requests, Excel Online to store and track them, OneDrive or SharePoint to host the file, and Power Automate to connect everything together. Make sure your Excel file has a properly formatted table, and create a simple Form that matches your chosen columns. That’s it — no coding skills or third-party apps required.

How it works at a glance

Here’s how the process flows in real life: a team member submits their leave details using the Form. Power Automate then writes those details into Excel, marking the request as Hold until it’s reviewed. At the same time, the manager gets an approval card asking them to approve or reject. Once the decision is made, the flow updates the same Excel row with the new status and emails the employee with the result.

Picture this: an employee requests three days off. The system records the entry as “Hold,” sends the approval card to the manager, and, as soon as the manager clicks “Approve,” the Excel sheet updates automatically while the requester receives a confirmation in their inbox. No chasing, no confusion — just a clean, automated workflow.

Suggested Excel setup

Prepare a table with columns such as:

  • Employee ID
  • Employee Name
  • From Date
  • To Date
  • Reason
  • Email
  • Leave Status

Tip: Use Employee ID as a unique key. This allows Power Automate to update the correct row later.

End-to-End Steps with Screenshot Markers 

This is where the real build begins. Follow the steps carefully and add your screenshots at the marked points. By the end, you’ll have a fully working automated leave approval system.

Step 1: Prepare Excel and Forms

Before building the automation, you need the two basic pieces where data will live and flow from: Excel to store the requests and Forms to collect them.

  1. Excel Online
    • Open Excel Online in OneDrive or SharePoint.
    • Create a new workbook.
    • Select your data range and convert it into a Table (Insert → Table).
    • Name the table (e.g., LeaveRequests).
    • Save the file in OneDrive or SharePoint.
  1. Microsoft Forms
    • Open Microsoft Forms and create a new Form titled “Leave Request.”
    • Add fields like: Employee ID, Employee Name, From Date, To Date, Reason, and Email.
    • These fields should match your Excel columns so Power Automate can map them later.

Step 2: Start the Flow in Power Automate

Now that your data sources are ready, the next step is to connect them through Power Automate. This starts with creating the actual flow.

  1. Go to Power Automate.
  2. Select Create → Automated cloud flow.
  3. Give it a name like “Leave Request Approval Flow.”
  4. Choose the option: “When a new response is submitted
  1. Pick your Leave Request Form from the dropdown.

Step 3: Capture Form Response

Once the flow is triggered, you need to pull in the actual answers submitted through the Form. This step ensures Power Automate knows exactly which request it is working with.

  1. Add a new step, and select the “Get response details” option.
  1. Select the same Form you used in Step 2.
  2. For Response Id, select Response Id from Dynamic content.

Step 4: Add the Request to Excel

At this point, you have the data from the Form. The next step is storing it in your Excel table so it becomes part of your leave tracker.

  1. Add a step: Add a row into a table..
  2. Select the following:
    • Location: OneDrive or SharePoint.
    • Document Library: Select the correct library (often “Documents”).
    • File: Browse and pick your Excel file.
    • Table: Choose the table you created (LeaveRequests).
  1. Map each Form field to the correct Excel column using Dynamic content.
  2. For Leave Status, type in Hold.

Step 5: Create the Approval Step

Now that the request is logged, it’s time to ask the manager to approve or reject it. Power Automate makes this easy by sending an approval card.

  1. Add a new step: Start and wait for an approval.
  2. Configure it as follows:
    • Approval type: Approve/Reject – First to respond.
    • Title: Something like “Leave Request from [Employee Name].”
    • Assigned to: The approver’s email address.
    • Details: Insert request details using Dynamic content (dates, reason, etc.).
    • Item link: Use Response ID to link the request.

Step 6: Add a Condition for the Manager’s Decision

After sending the approval, you need to tell the flow what to do with the manager’s response. This condition will split the path between Approved and Rejected.

  1. Add a Condition action after the approval.
  2. In the left box, select Outcome (from the approval step).
  3. In the condition, choose equals and type Approve.

Step 7: Update Excel and Notify the Employee

Once the manager makes a choice, the flow should update Excel and send an email to the employee. These two actions make the whole process feel seamless.

Action A: Update the row in Excel

  1. Add action: Update a row.  
  2. Fill in:
    • Location, Document Library, File, Table: same as earlier.
    • Key Column: Employee ID.
    • Key Value: Employee ID from the Form response.
    • Leave Status: map the Outcome from the approval (Approve or Reject).

Action B: Send an Email to the Employee

  1. Add action: Send an email (V2) (Outlook).
  2. For To: use the requester’s Email field from the Form.
  3. For Subject: “Your Leave Request Has Been [Outcome].”
  4. For Body: Include details such as dates and status.

Step 8: Save and Test the Flow

With all the logic in place, it’s time to test. Running a test ensures every part works exactly as expected.

  1. Click Save at the top.
  2. Run a Test by submitting the Form yourself.
  3. Check Excel — a row should appear with status “Hold.”
  4. Approve or reject the approval card.
  5. Return to Excel — the status should update automatically.
  6. Finally, check the requester’s inbox for the confirmation email.

Test the Flow

Now that your flow is complete, it’s time to put it to the test. Testing will confirm that all steps — from form submission to approval and notifications — work together without errors.

Step 1: Submit the Form

Fill out the Microsoft Form just like an employee would. Enter details such as Employee ID, name, dates, reason, and email address, then hit Submit.

Step 2: Excel Auto-Updates

As soon as the form is submitted, Power Automate runs in the background. Within seconds, a new row is added to your Excel table with all the details you entered. The Leave Status column will automatically display Hold to show that the request is waiting for approval. At the same time, an email notification is sent to the approver.

Step 3: Approver Responds

When the approver receives the request, they can review the details and respond directly. The response can be given through the email approval card, the Power Automate web portal, or even the mobile app.

Step 4: Leave Status Updates Automatically

As soon as the approver clicks Approve or Reject, the flow updates the same Excel row. The Leave Status column changes instantly to reflect the decision. This ensures the spreadsheet always shows the latest information without manual edits.

Step 5: Email Sent to Submitter

Finally, the employee who submitted the form receives an email confirming the decision. The message includes their leave details and the final status, so they don’t need to check the Excel file manually.

Practical tips and simple fixes

If your table doesn’t appear, confirm the range is formatted as a proper Table. If the file can’t be selected, double-check that you chose the correct OneDrive or SharePoint location. If a row doesn’t update, make sure your Employee ID is unique and mapped correctly. And if you need more than one approver, switch the approval type to “Everyone must approve.”

Variations to explore

Once the basic system is in place, you can extend it. For example, you could write requests into a SharePoint list instead of Excel for more control, send Teams notifications to managers, or build a Power BI dashboard connected to the Excel table to see leave trends at a glance.

FAQs

Q: Can employees upload supporting documents like medical notes?
Yes. Add a file upload field to the Form, and links will appear in Excel.

Q: What happens if the approver is unavailable?
You can assign approvals to a group mailbox or add backup approvers.

Q: Can I add conditions for departments?
Absolutely. Add a Department column and use Conditions or Switches in Power Automate to route requests.

Loading

Leave a Reply

Your email address will not be published. Required fields are marked *