Recherche de la position d’une cellule avec une donnée définie
Résolu
mijean94
Messages postés
415
Date d'inscription
Statut
Membre
Dernière intervention
-
mijean94 Messages postés 415 Date d'inscription Statut Membre Dernière intervention -
mijean94 Messages postés 415 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je recherche un code (VBA) qui me permette de retrouver dans une colonne la cellule ou il y a « fin » pour la N éme fois et mémoriser les coordonnées de cette cellule.
Le paramètre N sera défini dans une variable NOMBRE par exemple.
Pouvez-vous m’orienter vers une solution.
Mercie d’avance
Bien cordialement
Je recherche un code (VBA) qui me permette de retrouver dans une colonne la cellule ou il y a « fin » pour la N éme fois et mémoriser les coordonnées de cette cellule.
Le paramètre N sera défini dans une variable NOMBRE par exemple.
Pouvez-vous m’orienter vers une solution.
Mercie d’avance
Bien cordialement
A voir également:
- Recherche de la position d’une cellule avec une donnée définie
- Aller à la ligne dans une cellule excel - Guide
- Comment faire une recherche à partir d'une photo - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Ma position - Guide
- Je recherche une chanson - Guide
1 réponse
Bonjour,
Essaies :
Essaies :
Option Private Module Option Explicit Public Sub Utilisation() Dim cel As Range Set cel = NièmeCel("Fin", 4, Worksheets(1).Columns("D")) If cel Is Nothing Then MsgBox "La 4ème cellule contenant ""Fin"" n'a pas été trouvée" Else MsgBox "La 4ème cellule contenant ""Fin"" est " & cel.Address End If End Sub Public Function NièmeCel(s As String, n As Integer, r As Range) As Range ' Renvoie la nième cellule contenant la valeur s ' Arguments : s [in] Chaine de caractères cherchée ' n [in] Numèro de cellule (Nième) ' r [in] Plage de la recherche ' Retour : Range Cellule trouvée ou Nothing Dim ctr As Integer Dim adr As String Set NièmeCel = r.Find(what:=s, LookIn:=xlValues, lookat:=xlWhole) adr = NièmeCel.Address If Not NièmeCel Is Nothing Then For ctr = 2 To n Set NièmeCel = r.Find(what:=s, After:=NièmeCel, _ LookIn:=xlValues, lookat:=xlWhole) If NièmeCel.Address = adr Then Set NièmeCel = Nothing Exit For End If Next ctr End If End Function
Après mise en place du code dans mon programme ça fonctionne nickel.
Un grand merci.
j'ai juste remplacer la ligne,
)
Par ,
pour utiliser mes variables.
Bien cordialement
J’ai ajouté une feuille dans mon tableau et depuis le code du post1 ne fonctionne plus ou plutôt il y a l’erreur :
Variable objet ou variable bloc With non définie (erreur 91)
Sur : adr = NièmeCel.Address dans la partie Public Function
Information importante, bien sur je ne trouve pas pourquoi, mais :
a) L’erreur est là depuis que j’ai ajouté une nouvelle feuille en position 1dans le classeur.
b) Si je place la nouvelle feuille à une autre position dans le classeur le code fonctionne correctement ???
Y a-t-il une solution pour faire fonctionner le code même avec ma nouvelle feuille en position 1 dans le classeur ???
Merci pour l’aide
Bien cordialement
Remplaces :
Par :
Ou plutôt par :
en remplaçant NomFeuille par le véritable nom de la feuille : la feuille pourra ainsi se trouver n'importe où dans le classeur.
Cordialement
Patrice
Encore merci pour la réponse.
Bien cordialement