Macro technique

bonjour je suis en train de travailler sur un classeur excel pour la gestion d'un centre de loisir.

je voudrais donc que sur l'onglet "listingn principale" lorsque j'affecte un groupe a un jeune, son nom et son prénom se mettent automatiquement dans le listing du groupe correspondant.

si vous avez besoin de plus de detail n'hesitez pas!
je vous joint le fichier : https://www.cjoint.com/?DEklWZ3VLfh

un grand merciiii encore pour l'attention que vous m'accorderez !

4 réponses

  1. Contributeur
    Bonjour

    Votre fichier avec la formule pour afficher le nom et le prénom

    https://www.cjoint.com/?3EkmBNJiAAz
    0
    1. merci beaucoup pour le temps passé sur mon projet, votre technique va m'aider pour un autre problème mais elle ne correspond pas exactement a ce que je recherché. la technique de Gyrus est la plus adapté. encore un énorme merci pour l'aide !
      0
  2. Bonjour,

    Ton fichier en retour pour renseigner les fiches d'appel
    https://www.cjoint.com/?DEknqOCI8xy

    A+
    0
    1. cette solution est parfaitement adapté a mon problème, j'aimerais savoir comment avez vous fait pour que je comprenne et sache le refaire.
      en tout cas merci beaucouppppp !
      0
    2. J'ai utilisé une procédure évènementielle (Worksheet.Change) qui permet de détecter la modification d'une cellule dans la colonne I.
      Avec la valeur de cette cellule, on détermine le nom du groupe, soit le nom de la feuille cible.
      Il reste ensuite à faire la copie du nom et du prénom.

      Voici le code commenté :

      Private Sub Worksheet_Change(ByVal Target As Range)
      Dim LigneAjout As Long
      'Si le nombre de cellules modifiées est supérieur à 1, on sort de la procédure
      If Target.Count > 1 Then Exit Sub
      'Si la cellule modifiée appartient à la colonne "Groupe"
      If Not Application.Intersect(Target, Range("I6:I155")) Is Nothing And Target.Value <> "" Then
      'On détermine le nom de la feuille cible
      With Worksheets("groupe " & Target.Value)
      'On détermine le numéro de ligne où doit se faire la copie du nom et du prénom
      LigneAjout = .Range("E" & Rows.Count).End(xlUp).Row + 1
      'On copie le nom
      .Range("E" & LigneAjout).Value = Range("C" & Target.Row).Value
      'On copie le prénom
      .Range("F" & LigneAjout).Value = Range("D" & Target.Row).Value
      'On affiche un message pour indiquer que le traitement est réalisé
      MsgBox Range("C" & Target.Row).Value & " " & Range("D" & Target.Row).Value & " a été inscrit dans la fiche d'appel du " & .Name
      End With
      End If
      End Sub

      A+
      0
    3. un tres grand merci je vai essayer de maitrise le codage pour pouvoir le reutiliser par la suite mercii !!!!
      0
  3. Bonjour

    Voila une autre solution

    http://www.cjoint.com/?3Ekss19DbII

    A+
    Maurice
    0
    1. Bonjour

      encore une modif pour le nombre par groupe

      http://cjoint.com/?0Ell2S6NXNS

      A+

      Maurice
      0