Your students calculation suggests a less than optimum structure to your data.
Your If function could be simplified to:
If (Class Status="Confirmed"; Students)
But instead of trying to do it as a calculation, set up a script to use set field to capture this data at the right moment and store it in a simple number field. Then subsequent changes won't alter the value.
Sorry for my lack of knowledge here, but can you tell me how to do that? I understand how to create a script, but have never actually written one. How would it trigger?
I don't know how to answer that from the data you have provided so far. How is the class status changed?
You describe several fields, but do not indicate whether all your data is in a single table or if you have several related tables involved here. Your references to class status and data for individual students suggest that you should have at least three, if not more tables linked in relationships for managing this data.
This is an inherited DB. This is a scheduling database and uses two tables. One governs the actual events that are scheduled, another governing the actual course data that makes up the events that get scheduled. I hit the books and was able to work it out. Thank you very much for your help.