Hm that is weird. I took your code and tested it and it works for me. I even check the first few rows for each year in your workbook and they look accurate. The by statement in the frequency procedures is working. Why your titles aren't changing I am not sure of yet.
Do me a favor and check your SAS output not the Excel file. How does it look in your results tab? You should see the year breaks like this:
... View more