← Al Davies, 250 High Street

A volunteer schedule for a church or club in SharePoint

Use two SharePoint lists: Slots (one row per job per date, with how many people are needed) and Signups (one row per person per slot). Add a calendar view of Slots to see the month at a glance.

Nobody has to scroll a group text to find out who is coming. Exact names may differ on your screen.

Why signup sheets and group texts break down

A paper sheet at the back of the room works until someone is away. A group text works until it has 200 messages. Then the same things go wrong each time:

The fix is one place that shows each slot, how many people it needs, and who has signed up.

This guide is about a schedule of jobs and dates. To count hours that people have given, see "A volunteer hours tracker in SharePoint for a nonprofit". For a one-list task tracker with a punch list, see "A punch list tracker in SharePoint for a small contractor". To move from a spreadsheet, see "Replace a spreadsheet tracker with a SharePoint list".

The two lists

Slots has one row for each job on each date.

Signups has one row for each person in a slot.

Microsoft describes a lookup column as the way to link one list to another list on the same site. You make the source list first, which here is Slots. Then you add the lookup column to Signups. See the Microsoft page on lookup columns in the sources. If a lookup column shows blank, see "SharePoint lookup column shows blank or too few fields".

Columns to copy

Slots: Slot (the Title column), Date, Time, Needed, Status.

Signups: Title (first name), Slot (Lookup to Slots), Volunteer name.

A sample Slots row: Slot "Greeter 2026-11-01 9:00 AM", Date 2026-11-01, Time "9:00 AM", Needed 3, Status 1 Open. It then gets up to three Signups rows, each with that label picked in Slot.

Time slots

Put the time in the Time column and in the label, and make one Slots row per time block, such as "Greeter 2026-11-01 9:00 AM" and "Greeter 2026-11-01 11:00 AM". Each block gets its own Needed number and its own signups.

Step 1. Create the Slots list

  1. Go to your team's SharePoint site, or to Microsoft Lists.
  2. Pick New, then List, then Blank list.
  3. Call it Slots.
  4. Rename the Title column to Slot.
  5. Select Add column and add Date as a Date and time column. Microsoft says you can show only the date or both the date and time.
  6. Add Time as Single line of text.
  7. Add Needed as a Number column.
  8. Add Status as a Choice column. Type the choices as 1 Open and 2 Filled.

Microsoft's page on creating a column in a list lists the column types and what each is for. It is in the sources.

Step 2. Create the Signups list

  1. Create a second blank list and name it Signups.
  2. Leave Title as the volunteer's first name.
  3. Add a column named Slot and choose the Lookup type. Pick the Slots list as the source.
  4. Add Volunteer name as Single line of text.

Step 3. Enter the slots

Fill in the Slots list one season at a time, for example one month. You can type rows in the list, or use grid view to enter several rows at once. Microsoft's calendar page describes selecting Edit in grid view to enter data, then Exit grid view.

One way to start: add only the next four weeks. A short list is easier to check than a long one.

Step 4. Add a calendar view

A calendar view needs at least one Date and time column. Microsoft's steps are:

  1. In the Slots list, select Add view on the command bar.
  2. Enter a view name, such as "Month".
  3. Under Show as, select Calendar.
  4. Under Start date and End date, choose the Date column. For a single date, Microsoft says to use the same column for both.
  5. Under More options, choose which column labels each item. The default is Title.
  6. Select Create.

Microsoft also says you can set the view as the default, and that selecting a day with events shows their details in a panel on the right. See the calendar page in the sources.

The calendar shows the Slot label on each date. It does not show the number of signups by itself. To see who signed up, open the Signups list.

Step 5. Collect signups

Each person adds a row to Signups. Send them one link, instead of a long text thread. They enter their first name in Title and pick the slot in the Slot column. Two ways to start:

Count rows per slot to see if it is full. When the number of signups equals Needed, the coordinator changes Status on that slot from 1 Open to 2 Filled. This is a manual step. Open slots are easy to find with a view that shows only 1 Open.

To make that view, create a view named "Open slots" and filter Status to 1 Open. This filter works from the column header. Microsoft says filters with [Today] or [Me] need the classic view editor (Edit current view, then Filters).

Step 6. A swap process

Swaps need a clear rule. This is our advice, not a Microsoft rule. One way to start:

  1. The person who cannot come finds a replacement, or asks the coordinator.
  2. The replacement adds their own row to Signups for the same slot.
  3. The person who is leaving tells the coordinator, and the coordinator deletes or edits their row.
  4. If no one is found, the coordinator sets the slot back to 1 Open.

Use one rule: a swap is done only when the coordinator sees both changes in the list. A text between two friends is not a swap.

Step 7. A reminder to the coordinator

Power Automate can email the coordinator a weekly list of open slots. This is optional. Microsoft's page on scheduled flows lists the choices: "Once a day, an hour, or a minute." "On a date that you specify." "After many days, hours, or minutes that you specify."

  1. In Power Automate, go to My flows, open Cloud flows, and start a flow from blank.
  2. Use the Recurrence trigger with Interval 1 and Frequency Week. The Start time takes the form YYYY-MM-DDTHH:MM:SSZ; the Z marks UTC. Choose your Time zone too.
  3. Next, Get items (SharePoint): your site, then the Slots list.
  4. In Advanced options, set Filter Query to: Status eq '1 Open'. The text in quotes must match the choice exactly, including the number.
  5. In Advanced options, set Top Count. Microsoft says the default item limit is 100. You can raise the limit up to the list view threshold of 5,000. If you go past 5,000, Power Automate fails. Microsoft also says to turn on Pagination in the action settings for lists with more than 5,000 items. Set Top Count so you know what the flow reads.
  6. Add the Office 365 Outlook action Send an email (V2), and put the coordinator in the To field.

This flow reads the whole Slots list and does not know which dates are soon. To limit it to the next few weeks, you can add a Date condition to the Filter Query. Microsoft's Get items page gives a date filter example that uses formatDateTime and utcNow. Test it with a few rows before you rely on it.

Reminders to the volunteers themselves would need an email or Teams account for each person. That is more personal data than this tracker needs, so this guide stops at the coordinator.

Signing up from a phone

The Lists apps for Android and iOS were retired in mid-November 2025, per Microsoft, so volunteers sign up in the phone's web browser. Before the link goes out to the group, open it on a phone yourself, add one test signup, then delete it. "Microsoft Lists phone app is gone: what to use now" covers the details.

Privacy: keep it small

Store only what the schedule needs. First names, and a last initial if two people share a name, are enough. Do not add phone numbers, home addresses or notes about family or health. If someone needs to be reached, the coordinator can use the contact method the group already uses.

Views are not security. "Open slots" trims the screen, but every volunteer with list access can open a different view and read all signups. If some people should not see the list at all, set who has access to the site or list. For more, see "Keep one column private (like pay or notes) in a shared list".

What to avoid

When to get help

You can build all of this yourself in Microsoft 365. If you would rather have it built and tested for your team, I do that. A tracker like this is a fixed price: $5,000 for one, built in 2 weeks. See "What a SharePoint tracker costs to build". Bring one example of the problem to a free call.

Tell me what's still manual

I am Al Davies. I run 250 High Street LLC and build SharePoint trackers and Power Automate flows for operations teams. I work remotely. The first call is free, and I will not try to sell you anything.

See trackers I built: Tools I built

FAQ

How do I make a volunteer sign up sheet with time slots?

Add a Time column to the Slots list and make one Slots row per time block, each with its own Needed number. Volunteers then pick the block in Signups.

Is there a free volunteer sign up sheet template?

Not as a file. "Columns to copy" lists what Slots and Signups need, and the sample row shows how one slot is filled in.

How do I stop two people taking the same job?

Set the Needed number, count the rows in Signups, and change Status to 2 Filled when the count is reached. Check the list before you send out the schedule.

Do volunteers need a Microsoft 365 account?

Check with your admin. Who can open a list depends on how your organization shares its site.

How do I send volunteers a reminder?

A weekly Power Automate email to the coordinator is in Step 7. Reminders to the volunteers themselves would need an email or Teams account for each person.

Sources