besoin d'aide pour la gestion de remplacements

  • Initiateur de la discussion Initiateur de la discussion warry
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

warry

XLDnaute Nouveau
Bonjour à tous.

Je vous écrit car dans le cadre de mes "nouvelles" fonctions RH, je dois monter des chaines de remplacement.
J'aurais besoin d'un coup de main pour monter une macro qui me permette de faire cela, et d'y voir plus clair: Je m'explique:

Nous avons des employés référencés dans un tableau (colonne A = matricules / colonne B = Nom /colonne C = Prénom).

Partant de cette base, je me fait des scénarios de remplacement:
en colone D je met le nom du premier remplaçant, en colonne E le second et en colone F le troisième.

J'aurais besoin d'une macro type "inputbox" (j'ai cherché un peut quand même ) qui me permette de taper le nom d'une personne et de retrouver tous les scénarios ou il est en 1, en 2 et en 3.

Je ne sait pas si je suis très clair, du coup je vous met un exemple en PJ. Il y a 2 onglets, le personnel, et les scénarios.

Merci beaucoup pour toute l'aide que vous pourrez m'apporter, et je suis preneur de toute bonne idée.
 

Pièces jointes

Dernière édition:
Re : besoin d'aide pour la gestion de remplacements

Bonsoir warry.


Quelques essais sur la base de ce code :​
Code:
Sub toto()
Dim i&, j&, k&, l&, Nom$, Msg$, Dat(), Equ()
  Dat = Range("Dat").Value
  ReDim Equ(UBound(Dat), 6)
  Nom = UCase(InputBox("Qui ?", "Cherche..."))
  Equ(0, 0) = Nom
  For i = 1 To 6: Equ(0, i) = Dat(1, i): Next
  For i = 2 To UBound(Dat)
    For j = 3 To 5
      If Nom = UCase(Dat(i, j)) Then
        k = k + 1
        For l = 1 To 6: Equ(k, l) = Dat(i, l): Next
        Exit For
      End If
    Next
  Next

'Au choix,
'   1° Si on veut afficher :

  With [H1]
    .CurrentRegion.ClearContents
    .Resize(k + 1, 7).Value = Equ
  End With

'   2° Si on veut un message :

  i = 1
  Msg = Equ(0, 0)
  Do Until IsEmpty(Equ(i, 1))
    Msg = Msg & vbLf & vbTab & Equ(i, 1) & " : " & Equ(i, 2) & " "
    For j = 3 To 5
      Msg = Msg & Equ(i, j) & " / "
    Next
    Msg = Msg & Equ(i, j)
    i = i + 1
  Loop
  MsgBox Msg, vbOKOnly
End Sub


ℝOGER2327
#7641


Dimanche 22 Haha 142 (Résurrection de Bosse-de-Nage - fête Suprême Seconde)
6 Brumaire An CCXXIII, 7,1167h - héliotrope
2014-W44-1T17:04:48Z
 

Pièces jointes

Re : besoin d'aide pour la gestion de remplacements

Bonjour ROGER2327, et merci pour ton travail.
c'est presque exactement ce que je cherchais.
Mais par contre il ne remonte pas les remplaçants de rang 3 trois. Lol

Désoler de chipoter.

Ensuite je vais tenter de faire du ligne par ligne pour essayer de comprendre, et ca c'est pas gagné.

En tout cas merci encore
 
Re : besoin d'aide pour la gestion de remplacements

Re...


Je ne vois pas pourquoi il faudrait loller.​


ℝOGER2327
#7643


Lundi 23 Haha 142 (Chapeau de Bosse-de-Nage - fête Suprême Tierce)
7 Brumaire An CCXXIII, 6,7826h - figue
2014-W44-2T16:16:42Z
 

Pièces jointes

  • Capture.PNG
    Capture.PNG
    9.6 KB · Affichages: 68
  • Capture.PNG
    Capture.PNG
    9.6 KB · Affichages: 71
  • Capture.PNG
    Capture.PNG
    9.6 KB · Affichages: 68
Re : besoin d'aide pour la gestion de remplacements

Re...

Si j'ai "lollé", ce n’était pas du tout moqueur (excuse moi si tu l'as pris ainsi). au contraire, je me moquais de moi même qui chipote sur le fichier.

Regarde, j'ai fait l'essai avec TOUESTDIT. Il ne remonte pas dans la troisième colonne, alors qu'il est pressenti pour remplacer MENVUSSA (première ligne)
 

Pièces jointes

  • Tests.PNG
    Tests.PNG
    7.1 KB · Affichages: 59
Re : besoin d'aide pour la gestion de remplacements

Re...


Re...

Si j'ai "lollé", ce n’était pas du tout moqueur (excuse moi si tu l'as pris ainsi). au contraire, je me moquais de moi même qui chipote sur le fichier.

Regarde, j'ai fait l'essai avec TOUESTDIT. Il ne remonte pas dans la troisième colonne, alors qu'il est pressenti pour remplacer MENVUSSA (première ligne)
[état d'âme=vieux con]
Marre du lollage et autre fumisterie du genre 😛 😉 😀 😱 🙂 🙁 😕 😡 🙄 😎 😱 :
je ne suis qu'un vieux con, obstinément attaché à ma langue (la tare !) et à mon pays (le boulet !), convaincu qu'une phrase châtiée est plus expressive qu'une merdouille dysorthographique (il est trop !).
Un clavier possède suffisamment de touches pour écrire proprement... (grave !)​
[/état d'âme]​


Cela dit, avec un exemple, la remarque est plus claire. Il y a en effet une erreur dans le code.
Dans la procédure toto, la ligne​
Code:
    For j = 3 To 5
doit être remplacée par​
Code:
    For j = 4 To 6
Merci d'avoir pris le temps de soulever le problème.​


Bonne journée. ROFLMAOGCB


ℝOGER2327
#7646


Mardi 24 Haha 142 (Saint Claude Terasse, musicien des Phynances - fête Suprême Quarte)
8 Brumaire An CCXXIII, 5,7355h - scorsonère
2014-W44-3T13:45:55Z
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
0
Affichages
128
  • Question Question
Microsoft 365 Insertion de photo
Réponses
14
Affichages
437
Retour