VBA faire une recherche sur plusieurs feuilles excel
Fermé
COCOPSL
-
28 févr. 2022 à 15:41
Le Pingou Messages postés 12187 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 14 novembre 2024 - 3 mars 2022 à 16:18
Le Pingou Messages postés 12187 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 14 novembre 2024 - 3 mars 2022 à 16:18
A voir également:
- Recherche de données dans plusieurs feuilles excel vba
- Liste déroulante excel - Guide
- Formule excel pour additionner plusieurs cellules - Guide
- Feuille de pointage excel - Télécharger - Tableur
- Si et excel - Guide
- Fusionner plusieurs feuilles excel en une seule - Guide
9 réponses
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
28 févr. 2022 à 16:24
28 févr. 2022 à 16:24
Bonjour,
Juste au passage essayez cette correction:
Juste au passage essayez cette correction:
If c Is Nothing Then
MsgBox Message
End If
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
28 févr. 2022 à 23:25
28 févr. 2022 à 23:25
Bonjour,
Eh bien non, vous avez
Il manque MSGBOX devant Message.
Eh bien non, vous avez
If c Is Nothing Then
Message
End If
Il manque MSGBOX devant Message.
If c Is Nothing Then
MsgBox Message
End If
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
1 mars 2022 à 10:01
1 mars 2022 à 10:01
Bonjour,
J'ai testé votre code, modifier comme suit la parti : [If Then end If ]
J'ai testé votre code, modifier comme suit la parti : [If Then end If ]
If Not c Is Nothing Then firstAddress = c.Address .Select .Range(c.Address).Select Else MsgBox Message End If End With Next Ws End Sub
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
Modifié le 1 mars 2022 à 18:15
Modifié le 1 mars 2022 à 18:15
Bonjour,
Alors dans se cas la valeur (MaRecherche) n'est pas présente sur chaque feuille.
Vous devez contrôler manuellement que la valeur est bien présente dans les feuilles...
Encore une fois, je l'ai testé avec des valeurs numériques et tout fonctionne correctement.
Mon fichier test: https://www.cjoint.com/c/LCbro5W4Wyn
Alors dans se cas la valeur (MaRecherche) n'est pas présente sur chaque feuille.
Vous devez contrôler manuellement que la valeur est bien présente dans les feuilles...
Encore une fois, je l'ai testé avec des valeurs numériques et tout fonctionne correctement.
Mon fichier test: https://www.cjoint.com/c/LCbro5W4Wyn
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
2 mars 2022 à 14:14
2 mars 2022 à 14:14
Bonjour,
De ce fait j'en déduit que mon code selon fichier joint (poste 7) est correct, et que votre problème est résolu!
De ce fait j'en déduit que mon code selon fichier joint (poste 7) est correct, et que votre problème est résolu!
Bonjour Le Pingou,
Je vous remercie pour votre aide.
J'ai testé votre macro.
J'ai n'ai pas dû être claire dans mon explication.
La macro me sélectionne en effet la valeur cherchée (que j'ai mis dans la cellule F2 de la feuille "Recherche" en revanche quand la valeur n'existe pas, j'aimerai que le message " La valeur n'a pas été trouvé" s'affiche une seule fois, après avoir recherché dans toutes les feuilles. Et non 20 fois, si j'ai 20 feuilles, 40 fois si j'ai 40 feuilles.....etc. Et c'est ce que fait la votre comme la nôtre.
Je vous remercie pour votre aide.
J'ai testé votre macro.
J'ai n'ai pas dû être claire dans mon explication.
La macro me sélectionne en effet la valeur cherchée (que j'ai mis dans la cellule F2 de la feuille "Recherche" en revanche quand la valeur n'existe pas, j'aimerai que le message " La valeur n'a pas été trouvé" s'affiche une seule fois, après avoir recherché dans toutes les feuilles. Et non 20 fois, si j'ai 20 feuilles, 40 fois si j'ai 40 feuilles.....etc. Et c'est ce que fait la votre comme la nôtre.
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
2 mars 2022 à 16:25
2 mars 2022 à 16:25
Bonjour,
Alors voici le code qui devrait vous convenir:
Alors voici le code qui devrait vous convenir:
Sub Recherche() Dim MaRecherche Dim Ws As Worksheet Dim c As Range Dim Message As String, firstAddress As String Dim NonExi As Boolean, ne As Integer MaRecherche = Worksheets("Recherche").Range("F2").Value NonExi = False: ne = 0 Message = "La valeur cherchée " & MaRecherche & " n'existe pas !!!" For Each Ws In Worksheets With Ws Set c = .Columns("A:KT").Find(What:=MaRecherche, LookIn:=xlValues, LookAt:=xlPart) If Not c Is Nothing Then firstAddress = c.Address .Select .Range(c.Address).Select Else NonExi = True ne = ne + 1 End If End With Next Ws If ne <> 0 Then MsgBox Message & "Dans " & ne & " feuille/s " End If End Sub
Bonjour
Je viens de tester ce votre code mais il met le message quand bien même la valeur est présente sur une des feuilles
J'ai essayé en modifiant le code mais je n'ai pas trouvé la solution
Je viens de tester ce votre code mais il met le message quand bien même la valeur est présente sur une des feuilles
J'ai essayé en modifiant le code mais je n'ai pas trouvé la solution
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
Modifié le 3 mars 2022 à 16:22
Modifié le 3 mars 2022 à 16:22
Bonjour,
Non se n'est pas possible, l'indication est une seul fois à la fin pour autant qu'une valeur ou plus manques.
Merci de mettre votre fichier à disposition sur https://www.cjoint.com/ et poster le lien.
Voir mon fichier test: https://www.cjoint.com/c/LCdpvRTUPVn
Non se n'est pas possible, l'indication est une seul fois à la fin pour autant qu'une valeur ou plus manques.
Merci de mettre votre fichier à disposition sur https://www.cjoint.com/ et poster le lien.
Voir mon fichier test: https://www.cjoint.com/c/LCdpvRTUPVn
28 févr. 2022 à 21:52
Je vous remercie mais c’est bien la boucle que j’ai mis à la fin et cela ne fonctionne pas.