Fonctions pour rechercher dates

Bonjour à tous,

Je cherche dans mon calendrier à repérer les rendez vous en conflit. Je suis étudiante pour devenir assistance et gérer les calendrier.

Outlook ne permettant pas de repérer les rendez-vous en conflit j'ai exporté l'agenda et me suis dit que sur Excel ca serait plus pratique.

J'ai donc l'agenda suivant

ObjetDébutDébutFinFinReunion commenceReunion termine
Rendez-vous 114/10/202010:00:0014/10/202015:00:0014/10/2020 08:0014/10/2020 15:00
Rendez-vous 2 - fini après le début du rendez-vous 114/10/202009:00:0014/10/202011:00:0014/10/2020 09:0014/10/2020 12:00
Rendez-vous 3 - commence et termine pendant l'intervalle du rendez-vous 114/10/202011:00:0014/10/202014:00:0014/10/2020 15:0114/10/2020 17:03
Rendez-vous 4 - commence avant la fin du rendez-vous 114/10/202014:00:0014/10/202016:30:0014/10/2020 17:0014/10/2020 17:30
Rendez-vous 5 - commence et termine pendant l'intervalle du rendez-vous 1 et rendez-vous 414/10/202014:30:0014/10/202014:45:0014/10/2020 17:0015/10/2020 10:00

Les deux dernieres colonnes sont juste une concatenation des autres.

Je souhaite trouver une fonction qui pour chaque ligne sauf elle même va vérifier en colonne F et G les cas suivants:

- Y a t-il une autre réunion qui commence avant la fin de ma réunion - cas du rendez-vous 2, c'est à dire y a t-il une case dans la colonne F qui est comprise entre ma date de début de réunion F3 et ma date de fin G3 (une case F début entre F3 et G3)

- ou y a t-il une autre réunion qui commence avant la fin de ma réunion et se termine avant la fin de ma réunion - cas du rendez-vous 3, c'est à dire y a t-il une case dans la colonne F qui est comprise entre ma date de début de réunion F3 et ma date de fin G3 (une case F4 et G4 dans un intervalle F et G)

- ou y a t-il une autre réunion qui se termine avant la fin de ma réunion - cas du rendez-vous 4, c'est à dire y a t-il une case dans la colonne G qui est supérieure à ma case F5 mais inférieure à ma case G5 (une case G fin entre F5 et G5)

Je ne suis pas sûre de m'être bien exprimée mais je pense que vous comprendrez.

L'une des difficultés est que je ne veux pas que l'on prenne une ligne de référence telle que le Rendez-vous 1 et que l'on base les tests sur cette ligne seulement, mais qu'il soit possible que chaque ligne évaluée se compare aux autres (j'ai essayé des RECHERCHEV mais ca n'a rien donné)

Merci pour vos remarques

Bonjour,

voici un calcul de chevauchement de réunion

nota : il ne faut pas concaténer mais additionner les jours et les heures (dans excel, une heure est un nombre décimal égal à une fraction de jour)

=SOMMEPROD((F2<$G$2:$G$7)*(G2>$F$2:$F$7))>1

Bonjour à tous,

Autre proposition.
Plutôt que le type de chevauchement qu'il sert à rien de connaitre, je te propose d'afficher les n° de lignes des RV qui se chevauchent.
Cliquer en F met en surbrillance les lignes concernées.
Tu as juste à copier-coller tes RV à partir de A2:E2 (j'ai supprimé les colonnes F:G)
eric

voir nouveau fichier plus bas

PS : mais dans les options Calendrier tu as la possibilité de refuser automatiquement les demandes de RV en conflit. Voir peut-être de ce coté là.

suite...
fichier complété : les débuts/fins concernés sont également surlignés
eric

7classeur1.xlsm (19.49 Ko)

Bonjour à vous deux et merci beaucoup pour vos réponses,

Je suis assez impressionnée.

Steelson: J'ai bien réadapté ta formule sur mon fichier réel (et non sur mon fichier exemple) et elle semble bien fonctionner.

Par contre je n'ai pas compris comment fonctionne ta formule. Saurais-tu me l'expliquer ?

Eriiic: Ta solution va au delà de ce que j'espérais, merci.

Mais je ne comprends pas comment tu as fait. Excel m'a demandé d'activer les macros. Comment voir comment tu as fait.

Pour répondre à ta remarque, je suis une apprenti assistante et doit repérer les conflits mais ce n'est pas mon calendrier. Donc je ne suis pas maître de ce calendrier.

Merci à vous

Il s'agit d'une macro en VBA qui réagit lors du changement d'une valeur en B:E (événement Change).
Alt+F11 pour aller dans l'éditeur VBE et voir la macro.
Elle balaie toutes les lignes pour les comparer aux suivantes et ressortir les chevauchements.

Tu en as une autre qui surveille si tu cliques en F (SelectionChange) pour te surligner les lignes.
eric

Bonjour

Steelson: J'ai bien réadapté ta formule sur mon fichier réel (et non sur mon fichier exemple) et elle semble bien fonctionner.

Par contre je n'ai pas compris comment fonctionne ta formule. Saurais-tu me l'expliquer ?

voici l'explication, en espérant que ce soit suffisamment clair

=SOMMEPROD((F2<$G$2:$G$7)*(G2>$F$2:$F$7))>1

excel va comparer la date de début avec toutes les dates de fin

(F2<$G$2:$G$7)

de même excel va comparer la date de fin avec toutes les dates de début

(G2>$F$2:$F$7)

on regarde alors combien de cas il y a où on trouve un début ou une fin qui chevauche une réunion

Rechercher des sujets similaires à "fonctions rechercher dates"