Copier coller automatique d'une liste deroulante VBA

Bonjour,

Merci d'avance pour vos réponse,

Je me retrouve bloqué depuis ce matin

J'ai un tableau feuille 2 avec des professions / Nom / Prenom/ Adresse j'ai besoin en feuille 1 de faire un tableau avec des liste déroulante sur toute la colonne A afin de récupérer toute les personnes ayant le meme metier et leur informations sur la ligne.

En effet si je recherche des avocat je souhaite sur mon tableau retrouver la liste des avocat à la suite avec leurs informations.

mais je peux vouloir récupérer sur le meme tableau des avocat et des vendeurs.

du coup il me faudrait pouvoir insérer une liste déroulante tout le long de ma colonne A.

Je ne peux pas utiliser la fonction rechercheV parce que pour le meme metier je peux avoir plusieurs ligne renseigner.

Je sais pas si j'ai été clair. Je vous laisse mon fichier si vous pouvez me venir en aide je suis bloqué depuis ce matin.

Merci par avance

17vbatest.xlsx (9.63 Ko)

Bonjour Laura et bienvenue, bonjour le forum,

En pièce jointe ton fichier modifié. Le code se trouve dans trois composant : ThisWorkbook, Module 1 et Feuil1(Feuil1).

128laura-ep-v01.xlsm (26.04 Ko)

Bonjour,

Ce n'est pas dans mes habitudes d'interférer mais comme j'avais commencé (ThauThème ne m'en voudra pas...), voici votre fichier en retour avec même résultat mais franchement avec un code moins "pro" que celui de Thauthème

La liste déroulante en colonne A ne se met pas à chaque ligne mais en colonne A de la ligne suivante dès que l'importation précédente est effectuée.

Le bouton Effacer supprime toutes les données et remet la liste déroulante en A2. La liste est également placée en A2 à l'ouverture du fichier.

Cordialement

46vbatest.xlsm (22.28 Ko)

Bonjour,

Merci pour votre aide à vous deux !!! et merci d'avoir bien pris le temps de détailler tout le code ca va beaucoup m'aider.

J'aurais juste une question concernant le code de Dan. Je voudrais savoir si j'ai besoin d'ajouter plus de colonne dans mon tableau comment puis-je changer le code pour que ca puisse me chercher toute la ligne ?

Je voudrais savoir si j'ai besoin d'ajouter plus de colonne dans mon tableau comment puis-je changer le code pour que ca puisse me chercher toute la ligne ?

Il faudra adapter le code. Pour ce faire :
- Click droite sur l'onglet Feuil1
- A cet endroit du code juste au dessus de la ligne dlg = dlg+1 vous pouvez ajoutez les colonnes manquantes.

Exemple : si deux colonnes E et F supplémentaires, mettez ceci

Range("E" & dlg) = .Range("E" & cel.Row)
Range("F" & dlg) = .Range("F" & cel.Row)

Cordialement

Parfait, merci beaucoup pour votre aide je vais pouvoir enfin avancer

Salut Laura,
Salut les as,

une chose que j'aurais implémenté : des listes de validation excluant les professions déjà listées.
Condition : que la BDD en 'DATA' soit triée...

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'
Dim iRow%, sItem$, sData$
'
'Construction de la liste de validation
If Not Intersect(Target, Columns(1)) Is Nothing And Target.Row = Range("B" & Rows.Count).End(xlUp).Row + 1 Then
    Cells.Validation.Delete
    With Worksheets("DATA")
        If .[A3] <> "" Then _
            .Range("A1").CurrentRegion.Sort _
                key1:=.[A2], order1:=xlAscending, _
                key2:=.[B2], order2:=xlAscending, _
                key3:=.[C2], order3:=xlAscending, _
                Orientation:=xlTopToBottom, Header:=xlYes
        If .[A2] <> "" Then
            For iRow = 2 To .Range("A" & Rows.Count).End(xlUp).Row
                sData = .Range("A" & iRow).Value
                If WorksheetFunction.CountIf(Columns(1), sData) = 0 Then sItem = sItem & IIf(sItem = "", "", ",") & sData
                iRow = .Columns(1).Find(what:=sData, lookat:=xlWhole, LookIn:=xlValues, searchdirection:=xlPrevious).Row
            Next
        End If
    End With
    If sItem = "" Then
        MsgBox "! Toutes les professions sont déjà listées !", vbInformation + vbOKOnly, "Info"
    Else
        Target.Validation.Add Type:=xlValidateList, Formula1:=sItem
    End If
End If
'
End Sub


A+

Bonjour j'ai crée un nouveau poste mais je pense qu'il est important pour la compréhension du script de rester sur le meme.

J'aurais besoin de crée un menu déroulant en cascade ou on demanderait à l'utilisateur de sélectionner l'assurance, ensuite la profession et que le reste de la ligne se remplit automatiquement. De plus une precision est important si on a un cas avec deux personne ayant la meme assurance et la meme profession, il faudrait remplir autan de ligne qu'il y a de personne.

17menuencascade.xlsm (21.59 Ko)

Je vous ai mit une parti de mon tableau il y a bien entendu plus autre types d'assurance et plusieurs autre professions.

Bonjour le fil, bonjour le forum,

En pièce jointe ton fichier modifié avec une UserForm. Clique sur le bouton Rechercher...

28laura-ep-v02.xlsm (36.72 Ko)
Rechercher des sujets similaires à "copier coller automatique liste deroulante vba"