I tend to shy away from any situation where a sheet is dynamically built from formulas and editable in the app. It’s too easy to get into trouble if you ever resort your primary sheet or delete records. I prefer using a script to add missing records, such as students, to another sheet.
Here’s some info on a script that I use to add students to other sheets. If a name is not in the associated sheets, then the student name will be added. In my case I also use RowID and save the rowid in the associated sheets. This way if a students name is changed, the rowid won’t change and it won’t break any relations or erroneously add another record to the other sheets.