Petit problème sur le code pour un critere de filtre
Bonsoir à tous et toutes,
Vous trouverez ci-dessous le code en question :
Sub Importation_dans_le_fichier_pour_la_DI()
Dim Etiquette As String
Dim nombre As String
Dim Critère As String
Etiquette = InputBox("Quelle est le dernier numéro de votre fichier" & Chr(13), "Information pour pouvoir Exporter") & ""
If vbOK Then
nombre = Len(Etiquette)
Select Case nombre
Case Is = 6
Range("IMPORT_à_FAIRE") = Etiquette
Case Is = 1
Range("IMPORT_à_FAIRE") = "00000" & Etiquette & ""
Case Is = 2
Range("IMPORT_à_FAIRE") = "0000" & Etiquette & ""
Case Is = 3
Range("IMPORT_à_FAIRE") = "000" & Etiquette & ""
Case Is = 4
Range("IMPORT_à_FAIRE") = "00" & Etiquette & ""
Case Is = 5
Range("IMPORT_à_FAIRE") = "0" & Etiquette & ""
End Select
Critère = ">" & Range("IMPORT_à_FAIRE").Value
Range("Données").AutoFilter Field:=1, Criteria1:=Critère
End If
If vbCancel Then
Range("A12").Select
End If
Le problème apparait lorsque je lui indique le critére "est supérieur à" dans le cas ou le critère est "égal à" cela fonctionne bien.
Il me prend en compte le numéro au format nombre au lieu du format texte indispensable.
Je vous remercie pour votre aide
Amitié
Salut le forum
Air_2 merci d'utiliser les balises Code pour facilité la lecture de ta macro.
Tu sélectionnes ton texte et tu cliques sur le bouton Code en haut de la fenêtre.
Sub Importation_dans_le_fichier_pour_la_DI()
Dim Etiquette As String
Dim nombre As String
Dim Critère As String
Etiquette = InputBox("Quelle est le dernier numéro de votre fichier" & Chr(13), "Information pour pouvoir Exporter") & ""
If vbOK Then
nombre = Len(Etiquette)
Select Case nombre
Case Is = 6
Range("IMPORT_à_FAIRE") = Etiquette
Case Is = 1
Range("IMPORT_à_FAIRE") = "00000" & Etiquette & ""
Case Is = 2
Range("IMPORT_à_FAIRE") = "0000" & Etiquette & ""
Case Is = 3
Range("IMPORT_à_FAIRE") = "000" & Etiquette & ""
Case Is = 4
Range("IMPORT_à_FAIRE") = "00" & Etiquette & ""
Case Is = 5
Range("IMPORT_à_FAIRE") = "0" & Etiquette & ""
End Select
Critère = ">" & Range("IMPORT_à_FAIRE").Value
Range("Données").AutoFilter Field:=1, Criteria1:=Critère
End If
If vbCancel Then
Range("A12").Select
End If
End Sub
Un fichier exemple, car je n'arrive pas a reproduire ton problème.
Mytå
P.S. Tu peux ré-éditer ton poste avec le bouton Editer en haut de la fenêtre.
Usb512 a écrit :Salut le forum
Air_2 merci d'utiliser les balises Code pour facilité la lecture de ta macro.
Tu sélectionnes ton texte et tu cliques sur le bouton Code en haut de la fenêtre.
Sub Importation_dans_le_fichier_pour_la_DI() Dim Etiquette As String Dim nombre As String Dim Critère As String Etiquette = InputBox("Quelle est le dernier numéro de votre fichier" & Chr(13), "Information pour pouvoir Exporter") & "" If vbOK Then nombre = Len(Etiquette) Select Case nombre Case Is = 6 Range("IMPORT_à_FAIRE") = Etiquette Case Is = 1 Range("IMPORT_à_FAIRE") = "00000" & Etiquette & "" Case Is = 2 Range("IMPORT_à_FAIRE") = "0000" & Etiquette & "" Case Is = 3 Range("IMPORT_à_FAIRE") = "000" & Etiquette & "" Case Is = 4 Range("IMPORT_à_FAIRE") = "00" & Etiquette & "" Case Is = 5 Range("IMPORT_à_FAIRE") = "0" & Etiquette & "" End Select Critère = ">" & Range("IMPORT_à_FAIRE").Value Range("Données").AutoFilter Field:=1, Criteria1:=Critère End If If vbCancel Then Range("A12").Select End If End Sub
Un fichier exemple, car je n'arrive pas a reproduire ton problème.
Mytå
P.S. Tu peux ré-éditer ton poste avec le bouton Editer en haut de la fenêtre.
Merci Mytå
Je te remercie pour ces explications complémentaires, je t'en suis très reconnaissant.
Tu trouveras ci-joint un fichier qui va te permettre de reproduire mon problème
https://www.excel-pratique.com/~files/doc2/A_auditer.rar
Merci
Amicalement
salut,
tu dois avoir raison çà doit être une problème de format mais même en changeant le format des cellules à filtrer et C9, çà change rien!
En tout cas pour le filtre, est ce que ce serait pas plus lisible de l'écrire comme çà:
Critère = Range("IMPORT_à_FAIRE").Value
Range("Données").AutoFilter
Range("Données").AutoFilter Field:=1, Criteria1:=">=" & Critère
Sinon pour le reste c'est d'un autre niveau pour moi j'ai l'impression!
Salut le forum
Le filtre ne permet pas se critère sur des cellules contenant du texte.
Il faut convertir ta place en valeur numérique.
Sub Importation_dans_le_fichier_pour_la_DI()
Dim Etiquette As String
Dim nombre As String
Dim Critère As String
Dim Cellule As Range
For Each Cellule In Range("A13:A" & Range("A65536").End(xlUp).Row)
With Cellule
.Value = Val(Cellule)
.NumberFormat = "000000"
End With
Next Cellule
Etiquette = InputBox("Quelle est le dernier numéro de votre fichier" & Chr(13), "Information pour pouvoir Exporter") & ""
If vbOK Then
Range("IMPORT_à_FAIRE") = Val(Etiquette)
Critère = ">" & Val(Range("IMPORT_à_FAIRE"))
Range("Données").AutoFilter Field:=1, Criteria1:=Critère
End If
If vbCancel Then
Range("A12").Select
End If
End Sub
Format de la Celllue C9 au format "000000"
Mytå
P.S. Merci d'utiliser le bouton Répondre en bas, au lieu de Citer en haut (Cela alourdi la fenêtre pour rien)
Bonsoir à tous,
Merci pour vos interventions :
Effectivement, il lui faut une valeur numérique.
Et je tâcherai à l'avenir de faire répondre au lieu de citer....
A tous et toutes bonne soirée
Amicalement