I’d address everyone, not single him out. Maybe point out that aging often includes more fragile health, for many: “Please take care. Consider not attending if you are sneezy, coughy, or unwell, out of an abundance of caution and concern for those more fragile.”
Think about whether such an email would have stopped him attending. Some people are going to come, sick or not, whatever you say. Because people are just people. Better to just accept that, I think.
I’d wager that a very large percentage of people, who are convinced they know from whom they contracted their illness, are woefully mistaken, more often than not! It’s easy to pin this on Charlie because he was loudly sneezing and coughing. But it could just as easily have been someone else, who was there. Someone who just came from their grand children’s party or such. They touched something you also touched. Maybe you were already immune to the bug Charlie had, but were exposed to some new thing by someone else in the group, who has yet to manifest symptoms. Can you really KNOW with certainty from whom you got this bug? I think not. In which case you need to let it go, in my opinion.
I recently returned from overseas, took sick the day before getting on the plane. Arrived home and spent 20mins socializing with the dog walker, before he left. (No hugging, no handshake, etc.) He was dreadfully sick the next day and convinced he’d gotten it from me. Which IS possible, of course. But I think it’s unlikely, more likely he was already coming down with something, in my opinion!