macro sur une recherche

  • Initiateur de la discussion Initiateur de la discussion senna24
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

senna24

Guest
Bjour,

j'essaie de créer une procédure permettant de rechercher une certaine donnée ds une plage de recherche et d'aller vers une procédure1 si elle trouve la valeur en question et d'aller vers une proc2 si elle ne la trouve pas, jai pensé a commencer par ca:

Sub Macro1()
'

Cells.Find(What:="K jet med", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
End Sub

mais je n'arrive pas a faire un test sur le resultat de la recherche. Je souhairterais un truc du style:

If resultat Ok (ie K jet med trouvé) then Call Proc1
Else Call Proc2

sachant que la valeur recherchée se trouve ds la plage A1:A72

Quelqu'un a une idée?


Merci beaucoup
 
Salut,

Je te propose le code suivant:

sub prog()

dim mot as variant

mot = "La donnée que tu cherches"

for i=1 to 72

if cells(i,1)=mot then
call proc1
else
call proc2
end if

next i

end sub
-------------------------------------------------------------------------------------------
sub proc1()

ton code ...

end sub
-------------------------------------------------------------------------------------------
sub proc2

ton code ...

end sub

Voilà, et n'oublie pas de faire passer le mot pour mon problème à moi "Comment récupérer la liste dans un filtre automatique" ...
 
non cela ne marche pas car pr i=1 si il ne trouve pas "mot", il va tt de suite aller ds proc2 alors que c'est possible que "mot" apparaisse pr i=3.
j'avais pensé a ca des le départ mais cela ne marche pas il faudrait ds un premier temps qu'il parcourt la plage en question et des qu'i trouve le "mot" en question, qu'il execute proc 1 ou proc2.

merci quand meme!!!
 
Et comme çà ...

sub prog()

dim mot as variant
dim ExisteMot as boolean

'Initialisation de la variable
ExisteMot=false

mot = "La donnée que tu cherches"

for i=1 to 72

if cells(i,1)=mot then
ExisteMot=true
end if

next i

If ExisteMot = true then
call proc1
then
call proc2
end if


end sub
-------------------------------------------------------------------------------------------
sub proc1()

ton code ...

end sub
-------------------------------------------------------------------------------------------
sub proc2

ton code ...

end sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
0
Affichages
1 K
Retour