macro pour rechercher dans un intervalle

caramelle04

XLDnaute Nouveau
Bonjour à tous !

Voilà, je bloque depuis un bout de temps sur une macro et j'avoue que j'ai beaucoup de mal étant débutante en VBA donc je sollicite votre aide qui me serait vraiment la bienvenue.

Je vais essayer d'être clair et brève. J'ai 2 feuilles sur lesquelles je dois extraire des informations "programmation médecin" et "planning agents".
Je dois créer une macro qui puisse me permettre de rechercher si l'horaire du médecin est comprise dans l'intervalle de vacation de l'agent et ensuite de m'afficher le nom de l'agent son numéro et sa date de rendez vous. Une fois cette action effectuée, je dois faire en sorte que la date et l'horaire soient bloqués pour un unique agent.
Sachant qu'à une date il peut y avoir plusieurs horaires, je dois affecter d'autres agents à ces horaires.
Cela est-il possible ?
Dans le fichier que je vais transmettre en pièces jointes, j'ai déjà fait des bouts de macros qui fonctionnent et il ne me manque que ce bout pour que mon proget soit finalisée.

Toute aide me sera précieuse.

Je vous remercie d'avance.
 

Pièces jointes

  • VISITE MEDICAL.xls
    154.5 KB · Affichages: 73
  • VISITE MEDICAL.xls
    154.5 KB · Affichages: 73
  • VISITE MEDICAL.xls
    154.5 KB · Affichages: 74

Paritec

XLDnaute Barbatruc
Re : macro pour rechercher dans un intervalle

Bonjour Caramella le forum
je viens d'ouvrir ton fichier tu ne penses pas que des explications à l'intérieur pourrait nous permettre de t'aider
car là sans savoir comment tu utilises ton fichier ???????
a+
papou:)
 

caramelle04

XLDnaute Nouveau
Re : macro pour rechercher dans un intervalle

Bonjour Paritec,

Merci de m'avoir répondu. En fait, dans la feuille "BASE", j'ai une liste d'agent avec leur date de rendez vous. Après mise à jour de leur visite, grâce à la macro "agent à programmer" j'extrais les agents qui n'ont pas effectué leur visite dans l'année.

Ensuite, à partir des feuilles "agent à programmer", "planning agents" et "programmation médecin", j'effectue dans une macro une recherche par la date de vacation de l'agent et la date de rendez vous du médecin afin de le programmer sur une visite médicale seulement si le jour de la visite est le même que le jour de la vacation de l'agent. Donc ma macro m'affichera sur la feuille "test" la date du rendez vous, le nom de l'agent, son numéro et les horaires de rendez vous possible.

Ma difficulté est d'affecter à un agent une horaire seulement si elle est comprise dans sa vacation.
Par exemple si la vacation de l'agent est de 8h à 16h et que l'horaire de rendez vous possible est 7h et 10h, je souhaiterais que la macro n'affiche pour l'agent uniquement l'horaire 10h et non 7h. Une fois la date et l'horaire affectés, je dois les bloquer pour un unique agent. Même si un autre agent a la même vacation le même jour, il n'aura pas le rendez vous.

L'horaire de vacation se trouve dans la feuille planning agents à la colonne L et les horaires du médecin dans la feuille "programmation médecin".

Je ne sais pas si c'est plus claire...

Penses tu que cela est possible avec une macro ?

Merci.
 

tototiti2008

XLDnaute Barbatruc
Re : macro pour rechercher dans un intervalle

Bonjour caramelle, Bonjour Paritec,

Oui, oui...

Le principe de ton problème semble compréhensible, mais où chercher les informations dans le fichier fourni, ça...

En principe, en VBA on peut faire pas mal de choses, mais là on ne sait pas trop si tu veux gérer ça par médecin ou par agent, comment tu veux présenter ça, où chercher les infos...

Arriverais-tu à découper ce problème en morceaux, de façon à ce qu'on t'aide à résoudre petit problème par petit problème ?
 

caramelle04

XLDnaute Nouveau
Re : macro pour rechercher dans un intervalle

Bonjour Tototiti, Bonjour Paritec,

En fait tu as raison, mon problème est compréhensible et sûrement simple mais c'est moi qui complique un peu et peut être que je me fais mal comprendre.

Dans le module intitulé "RendezVousFixe", je cherche en fait à mettre une condition pour que lorsque je lance la macro, si un agent travaille le même jour que celui de la visite et que l'horaire du médecin est comprise dans sa vacation, il me propose juste cet horaire là et pas les autres. Et ne pas avoir plusieurs agents le même jour à la même heure.

Je ne sais pas si c'est mieux dit mais bon...

Tu penses que c'est possible ?
 

caramelle04

XLDnaute Nouveau
Re : macro pour rechercher dans un intervalle

Voilà je vais renvoyer le fichier.

Lorsque j'exécute le module "RendezVousFixe", j'ai le nom, le prénom, le numéro de l'agent, sa date de visite et 2 horaires qui s'affichent. Sa vacation est de 0500-1324 et les 2 horaires proposés sont 0740 et 1500. Ce que je voudrais, c'est trouver une condition pour que l'horaire de rdv fixe soit simplement 0740 car 1500 n'est pas comprise dans sa vacation.
Une fois que cette date et cet horaire bloqué, elle ne doit pas apparaître pour un autre agent.

J'ai été plus clair ?

J'espère que c'est possible...
 

Paritec

XLDnaute Barbatruc
Re : macro pour rechercher dans un intervalle

Bonjour Caramella04 le forum
bon alors si j'ai compris ce que tu veux regardes ton fichier et teste
pour ta première demande pour l'autre cela se passe comment expliques car moi je ne connais pas ton fichier et sans explications je ne vais pas chercher 3 heures pour comprendre
a+
papou:)
 

Pièces jointes

  • VISITE MEDICALV1.xls
    142 KB · Affichages: 64

Paritec

XLDnaute Barbatruc
Re : macro pour rechercher dans un intervalle

Re Bonjour Caramella, le forum
bon j'ai rajouté une condition aussi pour le minimum car j'avais fait que pour le maxi !!!
voilà testes et redis moi
Tu es bien impatiente, ici tu n'as pas remarqué mais c'est du bénévolat !!!
a+
papou:)
 

Pièces jointes

  • VISITE MEDICALV2.xls
    142.5 KB · Affichages: 78

caramelle04

XLDnaute Nouveau
Re : macro pour rechercher dans un intervalle

Bonjour Paritec,

Merci pour ton aide. Le test a fonctionné à merveille et c'est ce que je recherchais. Je sais que c'est du bénévolat, désolée si j'ai pu paraître impatiente :-(((

Juste une chose à te demander, comment faire pour supprimer les doublons ? Car le même agent apparaît plusieurs fois à des journées différentes.

Merci encore.
 

Paritec

XLDnaute Barbatruc
Re : macro pour rechercher dans un intervalle

Re Caramella04,
oui j'ai vu qu'il apparaît mais comme je ne sais pas ce que l'on doit obtenir c'est pas simple en plus je te réclame des explications et tu ne m'en donne pas tu veux que je fasse comment?
Tu as le fichier dans les mains ajoute une feuille et tu fais un petit mode d'emploi succinct et après cela va m'aider a t'aider
moi j'ai traité la manière d’écrire ton recap déjà que pour gérer des temps avec des cellules style 1200-1530 c'est pas facile mais après pour que le RV ne revienne pas expliques et je ferai ce que je peux si je comprend ta demande
a+
papou:)
 

Discussions similaires

Statistiques des forums

Discussions
312 723
Messages
2 091 355
Membres
104 891
dernier inscrit
siperr