Bonjour,
Pour automatiser la saisie d'absences de salariés, je voudrais relier mon tableau d'absences (onglet "absences") à la base du personnel, celle-ci ayant la particularité d'être constituée de plusieurs lignes par salarié, de façon à historiciser le parcours professionnel de chacun dans l'entreprise. Ces lignes sont appelées "historiques de poste", et ont chacune une date de début et une date de fin. Lorsqu'un salarié change de poste et/ou de statut et/ou d'établissement (etc.), on "clôture l'historique de poste à un date J et on ouvre un nouvel historique de poste à une date J+1.
Je souhaite donc qu'Excel retrouve automatiquement certaines informations du salarié pour lequel ses nom et prénom auront été saisis, en retrouvant l'historique de poste correspondant au 1er jour de son absence.
Le fichier joint sera plus clair.
Ma difficulité réside dans le fait que pour un salarié (une valeur recherchée), il existe potentiellement plusieurs lignes. Avec RECHERCHEV, je n'aurai donc pas le bon résultat car je ne peux pas filtrer ma recherche en fonction de la date de début et de fin de l'historique. J'ai aussi essayé avec SOMMEPROD mais les valeurs recherchées sont au format texte, ce qui empêche de les traiter.
J'ai enfin recherché s'il était possible de le faire avec INDEX et EQUIV, mais je ne vois pas comment insérer mes conditions de type >=, et <=.
Voici récapitulées mes conditions :
NOM&PRENOM = NOM&PRENOM (quite à créer une colonne intermédiaire pour concatener les deux)
ET début historique <= début absence
ET [fin historique >= début absence OU fin historique = ""] (pour repérer les historiques en cours)
Je suppose qu'avec une boucle VBA on doit pouvoir s'en sortir, mais si je peux me passer de cette solution, ça serait mieux (je ne me suis pas encore mis à la programmation).
Auriez-vous une idée pour résoudre mon problème ? Un grand merci pour votre aide.
Pour automatiser la saisie d'absences de salariés, je voudrais relier mon tableau d'absences (onglet "absences") à la base du personnel, celle-ci ayant la particularité d'être constituée de plusieurs lignes par salarié, de façon à historiciser le parcours professionnel de chacun dans l'entreprise. Ces lignes sont appelées "historiques de poste", et ont chacune une date de début et une date de fin. Lorsqu'un salarié change de poste et/ou de statut et/ou d'établissement (etc.), on "clôture l'historique de poste à un date J et on ouvre un nouvel historique de poste à une date J+1.
Je souhaite donc qu'Excel retrouve automatiquement certaines informations du salarié pour lequel ses nom et prénom auront été saisis, en retrouvant l'historique de poste correspondant au 1er jour de son absence.
Le fichier joint sera plus clair.
Ma difficulité réside dans le fait que pour un salarié (une valeur recherchée), il existe potentiellement plusieurs lignes. Avec RECHERCHEV, je n'aurai donc pas le bon résultat car je ne peux pas filtrer ma recherche en fonction de la date de début et de fin de l'historique. J'ai aussi essayé avec SOMMEPROD mais les valeurs recherchées sont au format texte, ce qui empêche de les traiter.
J'ai enfin recherché s'il était possible de le faire avec INDEX et EQUIV, mais je ne vois pas comment insérer mes conditions de type >=, et <=.
Voici récapitulées mes conditions :
NOM&PRENOM = NOM&PRENOM (quite à créer une colonne intermédiaire pour concatener les deux)
ET début historique <= début absence
ET [fin historique >= début absence OU fin historique = ""] (pour repérer les historiques en cours)
Je suppose qu'avec une boucle VBA on doit pouvoir s'en sortir, mais si je peux me passer de cette solution, ça serait mieux (je ne me suis pas encore mis à la programmation).
Auriez-vous une idée pour résoudre mon problème ? Un grand merci pour votre aide.