Affichage caractéristiques d'un élément présent dans une liste déroulante

Bonjour, je suis n'arrive pas à afficher les caracteritques d'un élément.

J'ai crée deux listes déroulantes. Je veux choisir ma ligne. ensuite enfonction de la ligne choisi, il me propose les numeros présents dasn cette ligne. Enfin j'aimerais qu'en fonction du numéro choisi, il m'affiche dans la colonne adjacente toutes les caractéristiques de ce numéro les uns en dessous des autres. Ici, cela correspond aux taches.

Merci pour votre aide.

image
14dev.xlsx (17.32 Ko)

Bonjour et bienvenue,
Merci de joindre un fichier pour une aide adapatée du forum.
Cdlt.

17dev.xlsx (17.32 Ko)

bonjour

puisque tu as tout nommé

cordialement

11ugocito.xlsx (17.13 Ko)

Merci beaucoup, mais ce n'était pas ca que je voulais, j'avais déjà trouvé en forme de liste déroulante. Cependant, je ne souhaite plus de listes déroulantes mais bien l'affichage dans chaque ligne de la colonne tache, le nombres de taches qu'il y a par trains. Des que je sélectionne le numéro de train, toutes les tâches correspondantes s'affichent.

Merci pour votre aide

bonjour, avec cette formule et un format personnalisé oubien un MFC pour cacher les zéros.

15dev.xlsx (23.57 Ko)
=DECALER(ListeTachesTrains;LIGNE()-2;EQUIV("Tâches_"&$C$3;ListeTachesTrains;0);1;1)
image

Whaa top c'est superbe, on voit l'expertise.

Bonjour,
Une autre proposition à découvrir.
Cdlt.

20ugocito.xlsm (38.54 Ko)

Bonjour le forum,

Jean-Eric je viens de télécharger votre fichier pouvez vous me dire comment avez vous procédé? je pourrais m'en servir peut être pour mon fichier.

Par avance merci

bonjour

dans ce cas en D3 il suffit de saisir

=INDIRECT("Tâches_"&$C$3)

cordialement

Re,
Bonjour au tridactyle,
Bonjour à la vache laitière (bio),

@alain_83740,
Des explications :
Tableaux structurés, Données validation, Gestionnaire de noms, Power Query et VBA.
On commence par quoi ?

Bonne journée.
Cdlt.

Tableaux structurés, Données validation; Gestionnaire de noms, là ça peu aller 
Power Query et VBA, là je prends un boite de Doliprane 

Merci @jean eric, c'est une autre belle proposition. Quel va être l'avantage de votre manière en utilisant le VBA, par rapport à utiliser directement une formule ? Merci. Et je serai ravi aussi d'apprendre à savoir comment vous avez codé ça en VBA. Merci

Cependant, quand je choisis ma ligne, il y a plusieurs fois chaque ligne, est-ce une erreur ? merci

Re,
Une petite mise à jour, our régler un petir souci.
VBA gère la validation des données (listes déroulantes) et actualise les requêtes en auto. Sinon, il faut actualiser manuellement.

12ugocito-v2.xlsm (38.70 Ko)

Le code VBA :

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)

    On Error GoTo errHandler

    Application.EnableEvents = False

    If Target.Address = "$B$4" Then
        Target.Offset(, 1).Value = vbNullString
        RefreshData
    Else
        If Target.Address = "$C$4" And Not IsEmpty(Target) And Not IsEmpty(Target.Offset(, -1)) Then RefreshData
    End If

exitHandler:
    Application.EnableEvents = True
    Exit Sub
errHandler:
    Resume exitHandler

End Sub

Private Sub RefreshData()

    Me.Range("pq_synthèse").ListObject.QueryTable.Refresh BackgroundQuery:=False

End Sub

Merci ! J'ai essayé de savoir d'où provenait l'erreur en comparant avec l'ancien mais je n'ai pas trouvé.... Je ne comprends pas où vous donnez l'info de la liste ( ici les 4 lignes de trains ) dans le code VBA. Je ne vois nul part la mention de cette liste dans le code. Pouvez-vous m'expliquer ? me conseiller un poste, une vidéo ? Merci beaucoup

bonjour le fil,

si on fait déjà la moitié en VBA, alors sans détour vers PQ (on peut encore supprimer les cellules vides)

13ugocito-v2.xlsm (37.90 Ko)
Private Sub Worksheet_Change(ByVal Target As Range)
     Dim c     As Range, LO, LO1

     Set LO = Sheets("Données").ListObjects("t_tâches")
     Set LO1 = Me.ListObjects("pq_synthèse")

      Application.EnableEvents = False

     If Target.Address = "$B$4" Then         'changer ligne = RAZ le reste
          Target.Offset(, 1).Value = vbNullString
          LO1.DataBodyRange.Delete
     Else
          If Target.Address = "$C$4" Then    'changer train = mettre à jour pq_synhèse
               If Not IsEmpty(Target) And Not IsEmpty(Target.Offset(, -1)) Then
                    On Error Resume Next
                    Set c = LO.ListColumns(CStr(Target.Value)).DataBodyRange     'listcolonne dans "données"
'Debug.Print c.Address
                    On Error GoTo 0
               End If
               With LO1
                    If .ListRows.Count Then .DataBodyRange.Delete
                    If Not c Is Nothing Then .ListRows.Add.Range.Range("A1").Resize(c.Rows.Count).Value = c.Value Else MsgBox "problème avec " & Target.Value
               End With
          End If
     End If

     Application.EnableEvents = True

End Sub

Bonjour,
VBA est utilisé pour réaliser la mise à jour des données.
Le reste, c'est à dire tout, est géré avec Power Query :
Ruban, Données, Récupérer et transformer des données, Obtenir des données, → Lancer l'éditeur Power Query...
Cdlt.

Toujours dans ce même fichier, à ta manière @Jean-Eric, j'aimerais, des que je choisis le numéro de train, il affiche dans la case que je souhaite les mots :" Non concerné". Même en étudiant le PQ de mon côté, j'ai toujours pas compris comment tout est connecté. Merci pour votre aide.

Rechercher des sujets similaires à "affichage caracteristiques element present liste deroulante"