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

filtre élaboré, enfin un peu

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

f69815

XLDnaute Occasionnel
bonsoir le forum,

petit pb dans un UF avec deux textbox, voici le code :

Sub filtre_num_oi()
MsgBox ' Vous avez choisi les OI entre ' & min_oi & ' et ' & max_oi
Sheets('histoi').Range('G1:G1').Select
Selection.AutoFilter
Selection.AutoFilter Field:=7, Criteria1:='==>' & min_oi, Operator:=xlAnd, _
Criteria2:='==>' & max_oi

End Sub


le msgbox retourne bien les valeurs rentrées dans l'UF, mais le résultat = 0, rien d'afficher, alors que je suis certain de ma fourchette.

ces variables sont déclarées public, string

cerise sur le gâteau, pour éviter les erreurs de frappe, comment en cliquant dans une cellule afficher sa valeur dans le textbox, sachant qu'il va falloir le faire deux fois pour le filtre.

la bonne nuit à tous ceux qui vont cogiter
 
Bonjour,

En fait tout marche très bien avec la macro suivante:

Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 30/06/2005 par GCHMDIR
'

'
min_oi = 'N00300226'
max_oi = 'N00300227'

Range('A10').Select
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:='>=' & min_oi, Operator:=xlAnd _
, Criteria2:='<=' & max_oi

End Sub

Aucune différence entre les versions 2000 et 2003. Alors d'où venait le problème?

Tout simplement parceque dans ta liste il y a un espace à la fin de chaque code, c'est pourquoi le = ne marche pas.

Le premier code s'affiche car 'N00300226 ' est > 'N00300226'
le deuxième ne s'affiche pas car 'N00300227 ' est différent de 'N00300227'.

Je te t'envoie pas de soleil des Antilles car il pleut beaucoup en ce moment mais le coeur y est.

@+

Gael
 
Bonjour Visiteur,

En fait, dans ce cas, je ne comprends pas ta remarque.

Comme il s'agit d'un mini maxi, il faut prendre tout ce qui est à la fois >mini ET <maxi.

Si je mets un OU, j'aurais aussi les valeurs >maxi et <mini.

@+

Gael
 
bonsoir les antilles,

désolé pour le retard à te répondre mais j'avais un martiniquais à la maison.

tu as raison pour l'espace, je l'avais identifié, mais j'ai mis max ou min_oi left(variable,8).


j'ai compri mon erreur, j'ai modifié mon fichier origine pour supprimer les espaces et tout va très bien.


merci pour tout chez nous on veut un peu de pluie
 
- 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
3
Affichages
443
  • Question Question
Microsoft 365 Question code VBA
Réponses
2
Affichages
611
J
Réponses
1
Affichages
2 K
Jerome5625
J
L
Réponses
2
Affichages
1 K
Legendre
L
Réponses
8
Affichages
2 K
C
Réponses
4
Affichages
1 K
ChrisAir
C
S
  • Question Question
Réponses
3
Affichages
1 K
L
  • Question Question
Réponses
0
Affichages
1 K
lycan54
L
M
Réponses
2
Affichages
1 K
michel90
M
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…