First let's discuss the 2 minor issues that are really bugging me:
1. Poor names/notes. Someone should be able to open a table, look at its names and its field names and have some sort of idea what it is for. 'Q1', '1(a), '1(b)' and even 'Roll number' does nothing for me. I have no idea what I am working with so can only apply the generalist of database normalization rules to help you. I can't offer any topic specific ideas because I have no idea what the topic is.
2. Bad characters in names. You should only use alphanumeric characters and underscores in names. When you use other characters (parenthesis, spaces) it makes, coding and querying later on a little more difficult. Do yourself a favor and don't use them.
Now, the 2 big mistakes which are essentially the same--storing data in names. One at the table level and one at the field level. :
3. Tables with the exact same structures shouldn't exist. You essentially copied table Q1, pasted it and replaced all the 1's with 2's. That's wrong If you feel the need to copy a table and just rename everything--don't, just add an additional field. Instead of 8 Q tables, you only need one. Let's make a copy of Q1 and call it tableQ, add a field, this would be its structure:
tableQ
RollNumber - existing field
Q_Number - will hold the number that suffixed the table name and prefixed each field
A - existing field renamed without number
B - existing field renamed without number
C - existing field renamed without number
D - existing field renamed without number
E - existing field renamed without number
That 1 table can now hold all the data from all your existing Q tables. Instead suffixing all those Q tables with a number, you would put that number in the Q_Number field and that would let you know what that record is for. However...
4. Don't prefix/suffix fields with numbers/letters. All those lettered fields need to go away as well. This is what tableQ should actually look like:
tableQ
RollNumber - existing field
QNumber - will hold that number formerly suffixed to the table name
QLetter - Will hold A, B, C, D, E
QValue - will hold the actual value that was once in the fields like 1(a), 1(b), 2(d), etc.
That's it. Instead of 8 tables with 6 fields each, that 1 table with just 4 fields now can hold all your data. Instead of 1 record in table Q1 you now have 5 records in tableQ. That's normalization. Better yet, reduces your queries and forms and most likely your yet to be built reports.