Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Utilisation de la fonction InStr en VBA

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

Re : Utilisation de la fonction InStr en VBA

Re

Merci pour le "eminent" !!!

Mais je ne sais pas bien comment traduire ton Instr(..)
Il te faut savoir que Instr renvoie un chiffre qui est:
Soit 0 si le second parametre n'est pas contenu dans le 1er
Soit le chiffre correspondant a la place de la 1ere lettre du second parametre contenu dans le 1er

Edit: Salut méano41
 
Re : Utilisation de la fonction InStr en VBA

Bonjour PierreJean, Bonjour mécano41,

avec plaisir, PierreJean 🙂

Concernant InStr, c'est bien ce que j'avais compris.
J'ai essayé : If InStr(Cells(7, m), Cells(n, m))=0 Then
Rows(n).Hidden = True
Mais ça ne fonctionne pas.

Je vais tester la solution de Mecano41 et je vous reviens.

Greg-O​
 
Re : Utilisation de la fonction InStr en VBA

Bonjour à tous,

NOTA : j'ai regardé pour le "IsError" mais pas du tout pour le Instr(...). Bien entendu, il faut d'abord qu'il fonctionne avant de voir si le test d'erreur est correct!

Cordialement
 
Re : Utilisation de la fonction InStr en VBA

Re

pour vérifier, tu peux également dans l'éditeur vba, entrer le mot à tester dans une procédure, une fois ton curseur placé sur le mot, tu presses la touche de fonction F1, l'aide vba s'affichera alors...

@+
 
Re : Utilisation de la fonction InStr en VBA

Bonjour PierreJean, bonjour Mecano41, Bonjour le forum,

Désolé de revenir après autant de temps, mais j'ai été un peu pris le vendredi après-midi...

Après avoir pris un peu de recul (ce n'est jamais mauvais😉) et approfondi la fonction InStr, j'ai fini par trouver la solution que je cherchais.

Pour ceux que ça intéresse, voici le code et un exemple en attachement.

Private Sub Worksheet_Change(ByVal Target As Range)
Dim StrValue As Long
Dim SearchChar, SearchString As String

Application.ScreenUpdating = False
If Target.Row = 6 Then
Rows.Hidden = False
End If
For m = 1 To 24
If Cells(6, m) <> "" Then
For n = 8 To Range("B65536").End(xlUp).Row
SearchChar = Cells(6, m).Value 'Définis la valeur à rechercher'
SearchString = Cells(n, m).Value 'Définis le contenu de la zone de recherche'
StrValue = InStr(1, SearchString, SearchChar, 1) 'InStr renvoie la position du 1er character de la valeur à rechercher. Le 1er "1" définit la position de début de recherche, le 2ème "1" définit le type de recherche (dans ce cas, recherche type txt , donc pas case sensitive)'
If StrValue = 0 Then
Rows(n).Hidden = True
End If
Next n
End If
Next m
Application.ScreenUpdating = True

End Sub


Voilà bonne journée à tous et un tout grand merci à ceux qui m'ont aidé à trouver la voie.

Greg-O
 

Pièces jointes

Dernière édition:
- 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

Discussions similaires

Réponses
5
Affichages
249
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
176
Réponses
7
Affichages
165
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…