It depends somewhat on what kind of analysis you need to do on the data after it is all collected. A lot of times, it seems that people's data analysis would be a lot easier if they had entered the data as a "database" -- more of a list with records and fields
I know that there will be some duplicated cells that way, but this kind of layout often makes it easier to create pivot tables, or use filters, or use lookup and other functions to work with the data. I note that the table you proposed should be fairly easy to create from a database using a pivot table (with topic and question as row labels and subject as column labels).
That would be my first suggestion -- consider the kind of analysis you are going to need to perform on these data. As it often seems appropriate for this sort of thing, consider arranging the raw data in some kind of "database" list format.
Bookmarks