Recherche dans une liste d'une autre feuille

Bonsoir le forum;

Voici l'objet de ma demande

D'après une liste de prénom en feuil2

avoir sur la feuil1

voir une cellule liste

en cliquant dans cette cette liste de la feuil1

aller à la ligne ou ce trouve ce même nom en feuil1

je joint un petit exemple simplifier

merci d'avances aux intervenants

Cdt

Gabinos

38liste.zip (4.09 Ko)

Bonsoir Gabinos

Voir le fichier joint (macro dans module de Feuil2)

60liste-v1.zip (15.12 Ko)

Bonsoir à tous,

Avec liste de choix

Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
Dim L As Integer
    If Not Application.Intersect(Target, Range("e3")) Is Nothing Then
        If Target = "" Then Exit Sub
      With Columns("c")
            Set c = .Find(Target, LookIn:=xlValues) ', lookat:=xlPart)
        If Not c Is Nothing Then
            L = Range(c.Address).Row
            Application.Goto Range("a" & L), Scroll:=True
            Range("c" & L).Activate
        Else
            MsgBox (Target & Chr(10) & "n'existe pas sur cette feuille !")
            Application.Goto Range("a1"), Scroll:=True
            Target.Activate
        End If
      End With
    End If
End Sub

Amicalement

Claude

Merci dubois et MaPoire

de vos réponses en VBA

Mais celle de dubois me convient le mieux, c'est exactement ce que je recherche

je vais mettre en application ,et je vous tient au courant

merci;

gabinos


Bonjour le Forum

Voila je n'arrive pas à reproduire la liste dans mon fichier

quel est la marche à suivre ?

l'exemple fourni c'est OK

je n'est pas compris, 'liste è ; 'ç liste dynamique

merci de m'aiguiller

Bonjour,

Pour la liste dynamique,

voir la formule dans le gestionnaire de noms, le nom/défini "Nom"

çà veut dire que tu peux ajouter ou supprimer des noms,

la liste/Validation sera toujours en accord.

En règle générale, il est préférable de dédier une feuille (ici "Listes")

pour y placer les différentes listes, c'est plus propre et on s'y retrouve + facilement.

Claude

Merci claude de ta réponse

entre temps j'ai réussi à l'intégrer à mon fichier

une autre question.

si la feuille de recherche est protéger

ça bug ? erreur d'exécution "1004"

application goto range...................

est en jaune

re,

Tu dois déprotéger en début de macro avec

ActiveSheet.Unprotect Password:="dudu"

et reprotéger à la fin

ActiveSheet.Protect Password:="dudu"

mot de passe facultatif (ici "dudu")

code entier

Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
Dim L As Integer
    If Not Application.Intersect(Target, Range("e3")) Is Nothing Then
        ActiveSheet.Unprotect Password:="dudu"
        If Target = "" Then Exit Sub
            Set c = Columns("c").Find(Target, LookIn:=xlValues) ', lookat:=xlPart)
        If Not c Is Nothing Then
            L = Range(c.Address).Row
            Application.Goto Range("a" & L), Scroll:=True
            Range("c" & L).Activate
        Else
            MsgBox (Target & Chr(10) & "n'existe pas sur cette feuille !")
            Application.Goto Range("a1"), Scroll:=True
            Target.Activate
        End If
        ActiveSheet.Protect Password:="dudu"
    End If
End Sub

Claude

Merci Claude

pour ta rapidité de réponse

ça fonctionne très bien

super sympa.


bonsoir le forum

pour claude

tout fonctionne

mai si je vais ouvrir la macro le mot de passe est visible

alors il faudrais ne pas avoir accès accès à cette macro

ou bien rendre le mot de passe invisible

Rechercher des sujets similaires à "recherche liste feuille"