How are you starting your layout? Are you created the sprites at layout in the event sheet. Or have you created and placed your sprites manually in the layout editor?
A basic fix is to have a global/instance variable. If you create sprites at the start of layout, then add one to that value per sprites. Alterntively if your sprites are already place before the start of layout. You could instead use "for each" and add 1 to the value of the variable.
Then when your player collects the sprites, subtract 1 from the value per sprite.
When the variable = 0 then all the sprites have been collected, the door move etc....