Macro recherche

Résolu
gege44120 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   -
Je suis débutant en macro et j'essai de faire une macro pour rechercher dans un grand fichier un nom. Cela fonctionne quand le nom est présent mais pas lorsqu'il n'est pas là. Pourriez-vous m'aider dans cette finition de macro. Merci d'avance.
Ci-joint ma macro

Sub Rech_Nom()
'
' Rech_Nom Macro
    
Debut:
Rem saisie Nom
    Range("$AF2").Select
    Nom$ = InputBox$(prompt:="Entrez le Nom de la personne ou 0 pour abandonner la saisie", _
    Title:="Nom adhérent")
    longueur$ = Len(Nom$)
    If Nom$ = "0" Then
        GoTo fin
    Else
        GoTo suite
    End If
suite:
    If Nom$ = "" Then
        titre$ = "Erreur"
        Message$ = "Vous devez entrer le nom de l'adhérent !!"
        MsgBox Message$, vbCritical, titre$
        GoTo Debut
    End If
   
    Cells.Find(What:=Nom$, After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
    DoEvents    ' Donne le contrôle à d'autres processus.
   
    End
fin:
    'Sheets("Liste Global").Activate
    Range("A2").Select
End Sub

2 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour,
"Cela fonctionne mais pas": qu'observes-tu quand cela ne fonctionne pas?
1
gege44120
 
Tout d'abord merci pour ta réponse. En fait quand le nom n'existe pas je reçois la boite de dialogue d'Excel avec "Débogage". En validant la zone suivante est colorié en jaune.

Cells.Find(What:=Nom$, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
1
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
tu reçois probablement aussi un message d'erreur: peux-tu nous le partager?
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
un exemple:
dim trouve as range
set trouve=Cells.Find(What:=Nom$, After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False)
if not trouve is nothing then
     trouve.Activate
else
     msgbox "rien trouvé"
end if   
0
gege44120 > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
Un grand merci, cela fonctionne bien
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > gege44120
 
peux-tu alors marquer la discussion comme résolue?
0