Un user form - plusieurs cells

Bonjour,

Je pense que ma demande a surement deja ete poste malheureusement je ne sais vraiment pas comment la formuler dans le moteur de recherche !

Voila le probleme sur lequel je penche depuis 3 jours.

J'ai créé un userform avec différents "labels". Dans mon code VBA j'ai changé les "captions" pour qu'ils correspondent au nom des cellulles,

Private Sub UserForm_Initialize()
    Label1.Caption = Sheets("Annuaire").Range("A1").Value
    Label2.Caption = Sheets("Annuaire").Range("A2").Value

End Sub

Dans mon fichier le label correspond à "Nom" et le label2 au nom de mon client. Cependant je voudrais que dans mon UF le label1 reste identique mais que le label2 se mette à jour automatiquement en fonction de la ligne sur laquelle je clique.

Par exemple si je clique sur la ligne3 alors le label2 devient : "Label2.Caption = Sheets("Annuaire").Range("A3").Value"

D'avance merci pour votre aide.

Bonne journee,

Mathias

Bonjour,

Voici un code à placer dans le module de la feuille "Annuaire"

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim MaPlage As Range
        Set MaPlage = Range("A2", Range("A" & Rows.Count).End(xlUp))
        If Not Application.Intersect(Target, MaPlage.EntireRow) Is Nothing Then
            UserForm1.Label2.Caption = Cells(Target.Row, 1)
        End If
End Sub

A+

Merci pour la réponse : ) !

J ai mis le code dans le module "Annuaire" mais cela ne change pas l UF.

Faut il que je change quelque chose dans le code :

Label2.Caption = Sheets("Annuaire").Range("A2").Value

Pour pas qu il reste bloqué la dessus ?

D'avance merci,

Mathias

Si tu joignais ton classeur, je pourrais voir plus facilement où ça coince.

A+

super merci.

FYI : Je travail sur l UserForm2 (j ai mis a jour ta formule sur le doc).

12book1.xlsm (22.15 Ko)

Ton fichier en retour

21book1.xlsm (24.75 Ko)

A+

Merci de ton aide.

Malheureusement je dois avouer que chez moi le fichier ne marche pas ? est ce parce que je suis en excel 2010 ?

Désolé de ces nombreux aller retours : (

Mathias

Il faudrait que tu sois un peu plus loquace

Avec "le fichier ne marche pas", nous n'irons pas bien loin ...

J'ai placé une procédure qui affiche l'USF à l'ouverture du classeur (module ThisWorkbook)

Private Sub Workbook_Open()
    UserForm2.Show 0
End Sub

La feuille active est "Annuaire".

Dans le module de cette feuille, tu dois voir la procédure qui assure le changement de la légende du contrôle label2.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim MaPlage As Range
        Set MaPlage = Range("A2", Range("A" & Rows.Count).End(xlUp))
        If Not Application.Intersect(Target, MaPlage.EntireRow) Is Nothing Then
            UserForm2.Label2.Caption = Cells(Target.Row, 1)
        End If
End Sub

Si tu sélectionnes la ligne2 ou la ligne 3 dans la feuille "Annuaire", tu dois voir la modification de légende du label2.

A+

Ah oui effectivement ca marche : ) !! je n'avais pas vu l'Objet "this Workbook".

Mais en fait je voudrais que l'UF se lance par un double click lorsqu'on est sur la sheet1 "VBM" sur la plage "C4:C10".

En somme la colonne C de la feuille1 se lie avec la feuille2 "Annuaire" ? Est-ce possible ?

Merci

J'ai du mal à te suivre ...

Quelle est la finalité de ce traitement ?

A quoi sert cet Userform ? juste à indiquer avec un label le nom sur lequel tu cliques ?

A+

en faite je cherche a créer un fichier dont la première page serai un résume d’activité. Et les informations serai sur les pages suivantes.

Chaque colonnes de la page1 correspond a une feuille dans le classeur. La colonne C par exemple correspond a la feuille Annuaire. Je remplis moi toute les feuilles, mais après j envois le fichier a mon boss qui lui ne regardera que la page1. Et lorsqu'il clique sur un nom dans la colonne C je veux que les données correspondantes s'affichent sans qu il ait besoin d aller dans la page Annuaire faire une rechercheV pour retrouver la bonne ligne.

L'userform que j'ai construit est bon, il montre les bonnes info et descend en fonction des lignes ca aussi c'est OK, maintenant il me reste plus qu a trouver comment faire pour qu'il ne soit attribué qu'a une plage de donnée en page 1.

Je ne sais pas si c est plus claire ?

D'avance merci pour l aide : )

Mathias

Bonjour,

Regarde cette proposition et dis-moi si cela correspond bien à ton attente.

13book1.xlsm (20.72 Ko)

A+

génial, Merci : ) !!!!!!

Je viens de tester et c est ce que j avais en tète : ) je vais regarder le code plus en détail pour en comprendre la construction.

Bonne journée,

Mathias

Rechercher des sujets similaires à "user form"