Assuming your situation resembles your example, the only way I can think of is to have one query that includes the source table as many times as there are fields. Equal join each table on a field that won't be part of the count. The query design grid would have criteria 1 in each field, but each on a different row (an OR situation). A second (Totals) query uses that query and performs a count for each field. If your source fields have data where you're showing nulls, then that complicates it.
EDIT - I meant the only way I could think of that didn't involve a vba function since a query was requested.
The more we hear silence, the more we begin to think about our value in this universe.
Paraphrase of Professor Brian Cox.