Comment fonctione la fonction recherche sous excel ?

  • Initiateur de la discussion Initiateur de la discussion fred2949
  • 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 !

F

fred2949

Guest
Bonjour,

je suis en train d'écrire une petite programmation permettant de faciliter la saisie d'informations.
Pour cela, je fais un masque de saisie qui invite à taper le nom du produit que l'on veut ajouter, et de là part une recherche dans le fichier (afin d'éviter les doublons).
Alors pour l'instant j'ai défini :

nomcom = userform1.textbox1

et je lance une recherche dans la feuille excel de la façon suivante :

For i = 2 To nombredeproduits
ActiveWorkbook.Sheets("liste des produits").Select
Cells(i, 1).Select
If ActiveCell.Value = nomcom Then

etc...

Ca fonctionne, cependant si celui qui écrit le produit à saisir avec une majuscule, le produit n'est pas retrouvé dans la feuille, et va donc le saisir une seconde fois.
Existe t-il un code permettant de recherche une suite de caractères, que ces caractères soient en minuscule ou en majuscule ? Comment faire pour que la recherche ne tienne pas compte des majuscules ? J'ai également la même interrogation concernant les accents, et les espaces...😱
 
Re : Comment fonctione la fonction recherche sous excel ?

Bonjour,

Avec FIND par exemple:

Méthode 1 (gestion d'erreur):

Code:
Sub cherche()
   nomCherche = InputBox("Nom cherché? ")
   On Error Resume Next
   Err = 0
   Range("A2:A14").Find(What:=nomCherche, LookIn:=xlValues).Select
   If Err = 0 Then
      Range(ActiveCell, ActiveCell.End(xlToRight)).Select
   Else
      MsgBox "Pas trouvé"
   End If
   On Error GoTo 0
End Sub

Méthode 2

Code:
Sub cherche2()
   nomCherche = InputBox("Nom cherché? ")
   Set result = Range("A2:A14").Find(What:=nomCherche, LookIn:=xlValues)
   If result Is Nothing Then
      MsgBox "Non trouvé"
   Else
      Range(result, result.End(xlToRight)).Select
   End If
End Sub


JB
Formation Excel VBA JB
 
Re : Comment fonctione la fonction recherche sous excel ?

bonjour,

En comparant les données en majuscule par:

If UCase(ActiveCell.Value) = UCase(nomcom)

ou en minuscule par:
If LCase(ActiveCell.Value) = LCase(nomcom)

A +
 
- 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

J
  • Résolu(e)
Réponses
6
Affichages
2 K
P
Réponses
6
Affichages
898
Pseudol
P
M
Réponses
11
Affichages
2 K
Melidan2006
M
R
Réponses
6
Affichages
3 K
R
Réponses
2
Affichages
1 K
ravenolhm
R
S
Réponses
2
Affichages
736
spadou86
S
Retour