I have a vaca/sick days tracker for my staff and the code is set up to go by the month (which makes sense). Our pay timeline doesn't fall perfectly on the start of each month... it's the 21st to the 20 of each month. January 21st - Feb 20th, Feb 21st - March 20th, etc... The code is =IF(AND((COLUMN()+19)>28*($A$3-1),MONTH(DATE($A$2+INT(($A$3+$A$1)/12),IF((INT((COLUMN()-1)/31.001)+$A$1)>12,(INT((COLUMN()-1)/31.001)+$A$1-12),INT((COLUMN()-1)/31.001)+$A$1),ROUNDUP(MOD(COLUMN()-1,31.001),0)))=ROUNDUP(MOD($A$1+$A$3-1,12.01),0)),ROUNDUP(MOD(COLUMN()-1,31.001),0),"")
Solved by G. H. in 27 mins