diff --git a/models/calendar.py b/models/calendar.py
index 9022995d4a88b05c708a94b62f830f730f1dc1d7..34b3052385dcc813175ced08dfa1b3c809658d5c 100644
--- a/models/calendar.py
+++ b/models/calendar.py
@@ -117,6 +117,7 @@ class CGScopCalendar(models.Model):
                 # Récupère les entrées en intersection
                 # avec la plage horaire
                 entries = self.search([
+                    '|',
                     '|',
                     '&',
                     ('start', '>', event.start),
@@ -124,13 +125,18 @@ class CGScopCalendar(models.Model):
                     '&',
                     ('stop', '>', event.start),
                     ('stop', '<', event.stop),
+                    '&',
+                    ('start', '<=', event.start),
+                    ('stop', '>=', event.stop),
                     ('user_id', '=', self.env.uid),
                     ('project_id', '=', event.project_id.id),
-                    ('id', '!=', event.id)])
+                    ('id', '!=', event.id)
+                ])
                 if entries:
                     raise ValidationError(
                         "Vous ne pourvez programmer 2 évènements avec le "
-                        "même code activité sur la même plage horaire")
+                        "même code activité sur la même plage horaire\n"
+                        "Evènement : %s" % str(entries.mapped('name'))[1:-1])
 
     # ------------------------------------------------------
     # Fonction boutons