I think I remember doing something similar by using a Google Drive (Sheets) to populate all the info.
I then used Google Drive's publish and javascript API to display on the webpage.
Then it was a simple matter of keeping the Google Sheets up to date, which is easy whichever way you do it (manually or with formulas).
hmmm, yah, I have a basic excel sheet that I put dates in and it generates a big long html code block -- interesting about the ability to publish via js api though -- might need to look into that!