0

I had broke down the persons birthday day by Month and Day.

They're birthday month= =TEXT([Birth Date],"mmmm") = for example "January"

and the day =TEXT([Birth Date],"dd") for example = 25 So how do I show it , using filters that if it January 25th today, the filtering shows who's birthday it is today?

I've tried every scenario and I can't figure it out. I want to take TODAY's month and day ( EST ) and show any body's birthday for the the current day. IS that possible?

Thanks in advance.

1

Sure, it is a fairly common requirement for an Intranet :-)

You don't specify how you want to show the result, but I'll guess it is as some sort of web part, and this should provide at good start: https://www.sharepointfire.com/2016/06/sharepoint-online-birthday-and-anniversary-web-part-using-search-results/

1

Well this is a good idea, sadly TODAY does not work that way. TODAY only matches a full date like 01.25.2018.

What you could do is use a calendar and enter all employees birthday, then mark it as a recurring event. You would have change the "current event" view to only show events for today. You simply change <now/> to <Today/> in the following query:

                <Query>
                <Where>
                    <DateRangesOverlap>
                        <FieldRef Name="EventDate"/>
                        <FieldRef Name="EndDate"/>
                        <FieldRef Name="RecurrenceID"/>
                        <Value Type="DateTime">
                            <Today/>
                        </Value>
                    </DateRangesOverlap>
                </Where>
            </Query>
  • This might actually not work as intended, It seems it does not honor the today part. I'll have to check up on it. – Morten K Sep 25 '18 at 11:44
0

We use the following approach: Have one column as Birth Date, just like you mentioned, and a second calculated column with the formula:

=DATE(YEAR(TODAY());MONTH([Birth Date]);DAY([Birth Date]))

This breaks the data from the Birth Column in Year, Month and Day, and replaces the "Year" value with the current year through TODAY().

However, bear in mind that whenever you have a calculated column, the data in it is not dynamic. The value sets when the item is created or edited.

This means that once a year you'll need to (in the simplest approach) go into the List's settings, go into the settings of the calculated field and click "Accept" as if you had changed anything. This will trick SharePoint into mass updating the field for all the list's items.

Alternatively, you could use a sort of programmed annual workflow. We prefer scheduling a task for the simpler approach.

-1

For your requirement, I recommend you create three calculated columns to filter items which birthday equals to today.

Calculated column 1:

Name set as “Birthday”;

Formula set as “=TEXT([Birth Date],"mmmm-dd")”;

The data type returned from this formula is: “Date and Time”. Date and Time Format: “Date Only”;

Calculated column 2:

Name set as “Today”;

Formula set as “=TEXT(TODAY(),"mmmm-dd")”;

The data type returned from this formula is: “Date and Time”;

Date and Time Format: “Date Only”;

Calculated column 3:

Name set as “IsBirthday”;

Formula set as “=EXACT([Birthday],[Today])”;

The data type returned from this formula is: “Yes/No”.

In the list view, set the filter as:

enter image description here

  • Using Today in a calculated column isn't really a good idea. The calculated column is only ever calculated whenever the item is edited, hence a birthday that isn't changed will never return to Yes. – Morten K Sep 24 '18 at 9:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.