diff --git a/models/training.py b/models/training.py
index 6f348dc223df4210811fe330a365f70c314432e4..bf64ddd12a32753fefd023f479d6aecd60532df3 100644
--- a/models/training.py
+++ b/models/training.py
@@ -88,7 +88,14 @@ class Training(models.Model):
         self.ensure_one()
         self.action_done()
         end_template_id = self.env.ref("training_survey.mail_template_training_end")
-        student_ids = self.student_ids.filtered(lambda s: s.state == "confirmed")
+        student_ids = self.student_ids.filtered(
+            lambda s: s.state == "confirmed"
+            and any(
+                s.student_slot_ids.mapped(
+                    lambda slot: True if slot.state == "present" else False
+                )
+            )
+        )
         for student in student_ids:
             aect_answer = student._create_answer(self.aect_survey_id)
             satisfaction_answer = student._create_answer(self.satisfaction_survey_id)