Vba : aller chercher une cellule qui se trouve n ligne plus bas.
seblg29
-
Patrice33740 Messages postés 8930 Statut Membre -
Patrice33740 Messages postés 8930 Statut Membre -
Bonjour,
Je viens juste de me mettre à vba,
et par l'intermédiaire de l'outil rechercher que j'utilise dans ma macro par :
Cells.Find(What:="nom", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
afin de trouver dans une autre feuille excel le même numéro,
je souhaiterais sélectionner la cellule qui se trouve 17 lignes plus bas que celle précédemment sélectionnée par la recherche.
Pouvez vous m'aider sur ce point ?
Merci d'avance,
sébastien
Je viens juste de me mettre à vba,
et par l'intermédiaire de l'outil rechercher que j'utilise dans ma macro par :
Cells.Find(What:="nom", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
afin de trouver dans une autre feuille excel le même numéro,
je souhaiterais sélectionner la cellule qui se trouve 17 lignes plus bas que celle précédemment sélectionnée par la recherche.
Pouvez vous m'aider sur ce point ?
Merci d'avance,
sébastien
A voir également:
- Vba : aller chercher une cellule qui se trouve n ligne plus bas.
- Excel compter cellule couleur sans vba - Guide
- Find vba - Astuces et Solutions
- Incompatibilité de type vba ✓ - Forum VB / VBA
- Erreur 13 incompatibilité de type VBA excel ✓ - Forum Excel
- Vba range avec variable ✓ - Forum VB / VBA
1 réponse
Bonjour,
Essaies ce code :
Essaies ce code :
Option Explicit
Sub xxx()
Dim cel As Range
'Trouver la prochaine cellule contenant "nom"
Set cel = Cells.Find(What:="nom", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
'Si pas trouvé ...
If cel Is Nothing Then
' afficher un message à l'utilisateur
MsgBox "Pas trouvé !", vbCritical
' et terminer
Exit Sub
End If
'Définir le cellule 17 lignes plus bas
Set cel = cel.Offset(17)
'Si besoin (et uniquement si besoin, ce qui est rarement le cas) : la sélectionner
cel.Select
End Sub