How to calculate the Next birthday from a birth date

I did some research how to make a list of the next birthdays, I post it here for future reference (for myself or others).

Step 1:
Have a date field: “Birthdate”

Step 2:
Calculate “Current age” from the “Birthdate”

Floor(Datediff( Now(),{Birth date})/(1461/4))

P.S. 1461/4 Is number of days in 4 years, so including the leap year. This is not 100% accurate though, so there might be a better equation for this.

Step 3:
Calculate “Next birthday” by adding the age to the “Birth date”, but correct for if you already had the birthday this year or not.

IF(Date_add({Birth date}, INTERVAL {Current age} year)<Now(), Date_add({Birth date}, INTERVAL {Current age}+1 year), Date_add({Birth date}, INTERVAL {Current age} year))

Step 4
If you want to create a list with upcoming birthdays, you will also need to calculate in how many days the birthday will be from Now(): “Days until next birthday”

DATEDIFF({Next birthday},Now())

You can use this in the “Sort by” of your table.