Générer des lignes correspondant à une valeur

Paulo17121997 Messages postés 3 Statut Membre -  
fabien25000 Messages postés 697 Statut Membre -
Bonjour,

J'espère que je vais réussir à être assez clair :

Sur ma première feuille j'ai renseigné à la main différentes informations (Nom d'entreprise, Date de commande, Date de livraison) qui correspondent à ma plage de donnée.

Je souhaiterais que lorsque je rentre dans une case le nom d'une des entreprises présente dans la plage de donnée j'obtienne de manière automatique toutes les lignes correspondant à l'entreprise.

Exemple : Entreprise X (case que je renseigne)

Entreprise X 27/03/2011 12/04/2011
Entreprise X 30/11/2014 02/01/2015
Entreprise X 02/02/2018 21/04/2018

Cela a pour but de pouvoir trouver de manière automatique tout l'historique de mes déclarations.

Merci pour vos futures réponses.

Paul

2 réponses

  1. fabien25000 Messages postés 697 Statut Membre 59
     
    Bonjour,
    qu'attends tu de ces lignes d'historique? c'est simplement une information temporaire de suivi? ça doit être inscrit sur la feuille que tu es entrain de remplir ?
    partage un fichier exemple avec ce tu attends précisément pour avoir une réponse adaptée à ton besoin
    1
    1. Paulo17121997 Messages postés 3 Statut Membre
       
      Bonjour, le but est de pouvoir jeter un coup d'oeuil sur une entreprise dans ma base de donnée.
      Voici l'exemple :





      Merci pour ta future réponse
      0
    2. fabien25000 Messages postés 697 Statut Membre 59
       
      pas de ligne, pas de colonne ni de nom de feuille... impossible de te donner de réponse..
      0
      1. Paulo17121997 Messages postés 3 Statut Membre > fabien25000 Messages postés 697 Statut Membre
         
        Excuse moi voilà :




        Si tous est sur la même feuille cela ne me dérange pas du tout.

        Merci
        0
    3. fabien25000 Messages postés 697 Statut Membre 59
       
      si ça s'affiche dans une fenêtre de dialogue qui donne l'info et qui se referme quand tu l'as lue ça te va?
      0
  2. fabien25000 Messages postés 697 Statut Membre 59
     
    Private Sub Worksheet_Change(ByVal Target As Range)
        Dim derlig, i, j, tmpsuivi, tmpmsgbox As Integer
    'recherche de la derniere ligne colonne B
        derlig = Worksheets("feuil1").Range("B" & Rows.Count).End(xlUp).Row
    'défition de la colonne de commande
        tmpsuivi = "Historique de commandes passées par l'entreprise " & Target.Value & vbCrLf
    
        If Not Intersect(Target, Range("B:b")) Is Nothing Then
            For i = 3 To derlig
                If Worksheets("feuil1").Range("B" & i) = Target.Value Then
                    tmpsuivi = tmpsuivi & Worksheets("feuil1").Range("C" & i) & " " & Worksheets("feuil1").Range("D" & i) _
                    & " " & Worksheets("feuil1").Range("E" & i) & " " & Worksheets("feuil1").Range("F" & i) & vbCrLf
                Else
                End If
            Next i
            tmpmsgbox = MsgBox(tmpsuivi, vbInformation + vbOKOnly, "Information")
        End If
    
    End Sub

    clic droit sur l'onglet de ta feuille < afficher le code
    coller ça
    je suis parti du principe que tout est sur la même feuille et j'ai gardé les cellule que l'on voit sur tes captures... à adapter au besoin

    0
    1. Paulo17121997
       
      Merci beaucoup, mon dernier message n’est pas partit à priori.
      Peu avant de manger j’ai trouvé la solution avec des formules matricielles
      Merci beaucoup je peux t’envoyer la formule si tu le souhaite.
      0
    2. fabien25000 Messages postés 697 Statut Membre 59
       
      poste t formule oui pour ceux qui auraient le m^me souci que toi !
      0