Copie valeur cellule si condition remplie

MATHIEUE91 Messages postés 2 Statut Membre -  
Frenchie83 Messages postés 2254 Statut Membre -
Bonjour à tous.

Je vous soumets un petit pb :

J'ai une liste de 3 noms en face j'ai 10 noms de projets. Je voudrais que les projets traités par les personnes (repérés par les X) se copient en face des noms dans le tableau + bas comme l'exemple joint.

Merci à vous de l'aide que vous pourrez m'apporter.

2 réponses

  1. Frenchie83 Messages postés 2254 Statut Membre 339
     
    Bonjour,

    Mauvaise présentation du tableau, les projets doivent se trouver à gauche (colonne A) pour permettre aisément l'extension des noms.

    Voici une proposition en VBA
    https://mon-partage.fr/f/S4omVLsF/

    Le code utilisé
    Sub Restit()
        Dim DerLig As Long, DerCol As Long, Lig As Long, Col As Long
        Dim NomTraite As Boolean
        Dim l As Long, c As Long
        
        Application.ScreenUpdating = False
        DerLig = [A1000].End(xlUp).Row
        DerCol = [A1].End(xlToRight).Column
        Lig = 13 'ligne de départ du tableau de la collecte
        Col = 5 'Colonne de départ du tableau de la collecte
        For c = 2 To DerCol
            Nom = Cells(1, c)
            NomTraite = False
            For l = 2 To DerLig
                If Cells(l, c) = "x" Then
                    If NomTraite = False Then Cells(Lig, Col) = Nom
                    Cells(Lig, Col + 1) = Cells(l, "A")
                    NomTraite = True
                    Lig = Lig + 1
                End If
            Next l
        Next c
    End Sub


    Vous pouvez ajouter autant de noms que vous le désirez. par contre, si vous choisissez de changer l'emplacement du tableau restitué, il vous suffit de modifier les paramètres "Lig" et "Col" dans le programme ((actuellement en ligne 13 et colonne 5)

    Cdlt
    3
    1. mathieue91
       
      Bonjour. Merci de votre aide. Je vais suivre vos conseils en modifiant suivant vos consignes ce tableau qui est un outil générique où je travaille. Rien de tel que de faire evoluer les choses ... ;-)
      Je regarde cela ce soir.
      0
    2. MATHIEUE91 Messages postés 2 Statut Membre
       
      Bonjour Frenchie83.

      Merci encore pour votre proposition. Ca marche nickel. Je voulais juste demander un complément si pas trop lourd pour vous : Comment pourrais-je procéder pour faire une mise à jour par nom , je m'explique :
      Dans le tableau d'origine j'ai X lignes par nom (10 dans l'exemple) ce qui permet que les noms restent positionnés sur les mêmes lignes origine.
      J'aimerais donc par exemple avoir un bouton de mise à jour pour LOLO, un pour LULU et un pour TOTO afin de pouvoir garder les mise à jour respective de chaque chef de projet dans l'espace dédié des 10 lignes de chacun...
      Je vous joins de nouveau une image sur la base du fichier de votre proposition.

      Merci encore pour votre aide.
      0
      1. Frenchie83 Messages postés 2254 Statut Membre 339 > MATHIEUE91 Messages postés 2 Statut Membre
         
        Bonjour,

        Pas tout compris, vous affectez le même nombre de lignes à chaque personne, même s'il y a des vides (ça risque de faire gros, vu dans le post 3, 120 lignes environ, le tout multiplié par chaque nom). De plus ça ne correspond pas à l'idée initiale.

        Adoptons les termes suivants pour une meilleure compréhension:
        Tab_A: tableau de saisie des valeurs (en A1:D9 dans l'exemple)
        Tab_B: tableau de restitution en colonne (en E13:F43 dans l'exemple)

        Ensuite vous voulez une mise à jour pour un nom choisi, donc on complète Tab_B si il y a un ajout de "x" dans Tab_A, mais si vous supprimer un "x" dans Tab_A, doit -on l'enlever ou le conserver dans Tab_B?

        Pour clarifier les choses et gagner du temps, mettez un exemple "Avant et Après" de ce que vous attendez.

        Cdlt
        0