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. Bonjour

    encore une modif pour le nombre par groupe

    http://cjoint.com/?0Ell2S6NXNS

    A+

    Maurice
    0
    1. Bonjour

      Voila une autre solution

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

      A+
      Maurice
      0
      1. 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
      2. 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