I'm not sure that what you want is possible. Technically, you're not getting any blanks, so the zn function doesn't work. You're "missing" information, which is not the same as getting "blank" information.
What I mean is that there is no connection between Mexico and Competitor A in your dataset, I don't think there is a function that can create that data. What you can do, is create a count competitor field that counts for each record all the As, Bs, Cs etc and then put those measures in the text table.
Does that help?