SharePoint Modern Calendar
It’s been a few years since the “modern” interface was first introduced in SharePoint Online. The calendar view in SharePoint lagged behind for a while, but now… how exciting! There is a modern calendar view for lists and libraries in SharePoint! The idea is that any list/library can be viewed in a calendar format, just based on any date fields.
Here are the steps to using the new modern calendar view on any modern list or library:
1. At the top right of the list or library, click the name of the All Items view, to get the View drop-down. Click Create new view.
2. Give your view a name, and under “Show as”, click Calendar.
The thing about calendar views, is that they’re going to be based on date fields in your list/library. By default, usually there are just two, Created and Modified. Notice in the above screenshot, it shows my Created date as both the start date and end date. This means that my calendar would end up just showing an event on the calendar to represent the day each item/file was created. Something more useful, would be a list of projects. We would have a column for “Project start” and “Project completion”. With this, the calendar would show items that span across multiple days to show the duration of projects.
3. To show a better example, using actual start and end dates, add the following date columns to your list “Project start” and “Completion target”.
4. On this new view screen, pick the start date as the start date, and pick the completion target as the end date. I’m naming the view “Project Calendar” here.
Notice that there are more options. The Title of items on calendar lets you select which field you’d like to be displayed on the calendar view, to represent each item/document. By default, it will show the title of the item. Click Create.
5. Now you’ll see the new modern view, with items in the list displayed as calendar events. Click on different days to see the details of the daily events display in the panel on the right.
Currently, modern calendars can’t be displayed as web parts on pages. You can set the calendar as the default view of that list/library if you’d like, though:
10/8/2021 Update: The calendar view *can* now be selected in a list web part, if you want to do something like display a calendar on your homepage.
Check out this full hour video of my demonstration of modern calendar views in SharePoint. I even include a few extras, like taking an existing classic SharePoint calendar and “converting” it to modern.
This is a good start, but is missing basic functionality like filtering. It is possible (with some creativity) to build a URL with static filtering queries, but nothing dynamic (e.g.: filter to items created by [me]/current user). Also, as soon as our users discovered this, they asked us how to color code it. I imagine that possibility will come when they implement json-based view formatting (hopefully soon).
I agree, it doesn’t have a lot of the features that the classic one had. No, I don’t know of any workarounds like that. Short blog post. :-/
Filtering can be done through the URL. I recommend adding this to your tutorial! https://[URL/LIST/VIEW%5D.aspx?viewid=%5BVIEWID%5D&useFiltersInViewXml=1&FilterField1=%5BFilter Field]&FilterValue1=[What you want to filter on]&FilterType1=Text&FilterOp1=In
Thanks for the tip, but that’s not specific to a calendar and can be done on any list or library. This was just a quick post showing how to create a modern calendar.
I hope Microsoft will bring back the overlay calendar too.
I don’t know if this is just my tenant, but when you try and add this solution to SharePoint via the list webpart the Calendar view wont show. What I had to do is embed the calendar list page using an iframe, which works but clumsy and annoying.
Also learned today of the new Channel Calendars in Teams – those don’t provide filtering or colors either. Still lots of work to do on Calendaring from Microsoft.
One thing I tried that appears to work with getting the calendar view on a page is the embed webpart. e.g. use an iframe The view id parameter you get from the list view from address of the page you view the calendar in. It is after the &Viewid of the address.
I haven’t test extensively but it appears to work and give full access to the controls, adding, side panel etc. No ideal but a work around.
The other way is using the pnp react calendar sample web part, but that maybe going a little far for some people.
Yes, definitely not yet a good replacement for the classic calendar list. One major thing missing is the ability to create recurring items (once a week, once a month, etc.). I imagine that will eventually come.
I agree, and yes, hopefully so.
I have an existing calendar, to which I added a Modern Calendar view, which looks great. But, this calendar has a lot of all day events, where the start time shows as 12:00am, and the end time is 11:59pm. On the Modern Calendar view, these events show as 7:00pm to 7:00pm. The site is set to the same time zone as my system. Any idea why this happens?
It seems like the modern calendar is still buggy when it comes to all day and recurring events.
Laura, do you know how we can apply view formatting to Events/Calendars? It seems other MS Lists can be customized (list, form, and view-formatting) via JSON, but for Events/Calendars, only the list and form can be customized by JSON. Wondering if I’m missing something.
I don’t think you can, at least not yet.
Have you tried this yet. It would be really helpful if recurring events were there or maybe a power automate to accomplish this
Microsoft has not made it possible yet.
Does this modern calendar support recurring events ?
I don’t think it does, but I haven’t tried it.
Is there a way to change the colors so that you don’t need to do an overlay
Hi Laura. Do you know is there any way I can click on the event and view the event details? I think it is basic functions but seems not supporting now:(
Hi Laura. Do you know how can I click on the event and view the event details? I think it is just a basic function but now seems not supporting yet.
This is a great feature ! but it’s missing a very important column “Recurrent”, Although that I can add in “Event” content type, the recurrent column does not show on new item form
Yes, that’s true. I’m not sure why Microsoft hasn’t put that in yet.
Has anyone found a way to sync the modern calendar to Outlook?
Each Microsoft 365 group has its own built in calendar, and those show in your Outlook. So, that’s the new way to do something similar.
Is there a way to hide the weekends? I know how to do that in classic when we had access to a Content editor web part but modern doesn’t have it. Thanks
Is there a way to do an “All day event”?
Yes, there’s a check box that says “all day” when adding a new event.
Hoping they have color-coding soon as well
Junk. Unless I’m missing something, clicking on an event downloads it???? I would think if I click on an event/meeting it would actually bring it up. Am I missing something?
Maybe try a different browser? I’ve never seen it behave that way.
In the calendar view, is there a way to click on the + New option on a date and have that date automatically populate the date field of the list item? Thanks
How can i reorder a column?
In the list settings, click “reorder”.
If you’re referring to a view, just drag the column over.
Same as reported above, when I double click an item in the calendar it launches the downloads Menu and not the full event
I’m using the SharePoint Online modern site, and I’ve added the Group Calendar as a web part to my home page. It is connected to an Office 365 group calendar. I add events from the shared calendar in Outlook, and the Group Calendar synchronizes with it. When I select an event, a pop-up appears with the event and any information or images I’ve added to it. I can even add repeating events. It works ALMOST exactly as needed. What is still missing is a way for authorized users to add Office 365 synchronized events directly from the SharePoint page.
That would be nice to have, I agree.
I’m revisiting the Modern Calendar view, and I’m still hitting this odd time zone issue. My SharePoint site is set for US Eastern, and my all day events show start time of 12:00am and end time of 11:59pm. When I create the Modern Calendar view, it seems to convert the times to UTC. The list’s old calendar view and the All Events view show the correct time, but only the Modern Calendar view is shifting to UTC. Any new ideas about how to change that? Some hidden time zone setting I’m missing?
On the time zone issue, I should note I see this only happens with events that are flagged as “All Day.” If I create an event in either view with the 12am to 11:59pm (or 11:55pm), it displays the correct time in all views.
In the site settings, there’s “regional settings” where you set the time zone for your SP site.
I’ve verified the SP site is set to the correct time. Unfortunately, the “All Day” option is still buggy a year after I tried this the first time. I also noticed something odd when I try to create an event from the Modern view. I only see the following fields in the New Item dialog: Title, Location, Start Time, End Time, Description, Category, and Attachments. However, if I try to Edit the Columns, I see All Day Event, Recurrence, and Start Time UTC. They are all checked but do not show up in the new event dialog. But, that “Start Time UTC” has me wondering about how the events are displaying.