So... in this example Class sheet "11h1" has columns A:F, Master sheet has columns A:E
On the master sheet, columns A and C are typed in.
Type these formulas in the remaining columns of row 2 (i.e. the first row of data below the headers):
B2 =VLOOKUP($A2,INDIRECT("'"&$C2&"'!A:F"),2,FALSE)
D2 =VLOOKUP($A2,INDIRECT("'"&$C2&"'!A:F"),5,FALSE)
E2 =VLOOKUP($A2,INDIRECT("'"&$C2&"'!A:F"),6,FALSE)
A:F because that is the range covered by data in the Class sheet
2 because the name is in the second column of the Class sheet
5 because the grade is in the fifth column of the Class sheet
6 because the rag data is in the sixth column of the Class sheet
Copy these formulae down to row 3.
To test it further, create a new sheet called 11h2. On row 1, put the same headers as on sheet 11h1. Move the data for either of the students from 11h1 to 11h2. If you look at the master sheet, the details for the student that you moved will probably say #n/a. But then type their new class name into column B, and their details will reappear automatically...
The column order of the master sheet is unimportant, provided that the formula in those columns point to the column number in the class sheet that contains the data you want.