Problème filtre élaboré
Résolu/Fermé
jeepipy
Messages postés
70
Date d'inscription
samedi 9 janvier 2010
Statut
Membre
Dernière intervention
9 août 2023
-
6 oct. 2018 à 07:44
jeepipy Messages postés 70 Date d'inscription samedi 9 janvier 2010 Statut Membre Dernière intervention 9 août 2023 - 12 oct. 2018 à 08:42
jeepipy Messages postés 70 Date d'inscription samedi 9 janvier 2010 Statut Membre Dernière intervention 9 août 2023 - 12 oct. 2018 à 08:42
A voir également:
- Problème filtre élaboré
- Photo filtre 7 gratuit - Télécharger - Retouche d'image
- Filtre teams - Accueil - Visio
- Filtre google sheet ne fonctionne pas ✓ - Forum Excel
- Excel filtre date ne fonctionne pas ✓ - Forum Excel
- Filtre manga - Accueil - TikTok
13 réponses
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
6 oct. 2018 à 11:08
6 oct. 2018 à 11:08
Bonjour,
Question: Lorsque vous sélectionnez la zone à filtrer, êtes-vous sûr qu'il n'y ait pas une colonne masquée?
Cdlt
Question: Lorsque vous sélectionnez la zone à filtrer, êtes-vous sûr qu'il n'y ait pas une colonne masquée?
Cdlt
jeepipy
Messages postés
70
Date d'inscription
samedi 9 janvier 2010
Statut
Membre
Dernière intervention
9 août 2023
155
6 oct. 2018 à 19:46
6 oct. 2018 à 19:46
bonjour Frenchie,
je confirme qu'aucune colonne est masquée.
l extraction se fait sur une modalité de la 4e variable puis quand je relance l extraction se fait sur une autre modalité de la même variable.
je confirme qu'aucune colonne est masquée.
l extraction se fait sur une modalité de la 4e variable puis quand je relance l extraction se fait sur une autre modalité de la même variable.
yg_be
Messages postés
23338
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
19 novembre 2024
Ambassadeur
1 551
7 oct. 2018 à 13:51
7 oct. 2018 à 13:51
bonjour, peux-tu partager ton fichier?
Raymond PENTIER
Messages postés
58726
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
19 novembre 2024
17 242
7 oct. 2018 à 17:40
7 oct. 2018 à 17:40
Bonjour jeepipy.
Qu'appelles-tu "modalité" ?
Pourquoi ne pas joindre un fichier, comme d'habitude ? C'est plus facile pour tout le monde : celui qui expose son problème, ceux qui proposent des solutions.
Qu'appelles-tu "modalité" ?
Pourquoi ne pas joindre un fichier, comme d'habitude ? C'est plus facile pour tout le monde : celui qui expose son problème, ceux qui proposent des solutions.
1) Tu vas dans https://www.cjoint.com/
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier (15 Mo maxi)
3) Tu défiles vers le bas pour cliquer sur le bouton bleu [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien en gras ; tu fais un clic-droit dessus et tu choisis "Copier le lien"
5) Tu reviens dans ta discussion sur CCM, et dans ton message tu fais "Coller".
=>Voir la fiche https://www.commentcamarche.net/faq/29493-utiliser-cjoint-pour-heberger-des-fichiers
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
jeepipy
Messages postés
70
Date d'inscription
samedi 9 janvier 2010
Statut
Membre
Dernière intervention
9 août 2023
155
8 oct. 2018 à 06:46
8 oct. 2018 à 06:46
Bonjour,
je vous remercie de vos réponses.
J'entends par "modalité" les valeurs différentes d'une variable.
Désolé de ne pas avoir joint le fichier mais je ne connaissais pas la procédure.
Malheureusement je ne peux le faire de suite car le serveur de mon travail bloque le lien "http://cjoint.com/ "
Je vais essayer de chez moi ce soir.
Vous trouverez déja mon code:
Je vous remercie.
Bonne journéE.
je vous remercie de vos réponses.
J'entends par "modalité" les valeurs différentes d'une variable.
Désolé de ne pas avoir joint le fichier mais je ne connaissais pas la procédure.
Malheureusement je ne peux le faire de suite car le serveur de mon travail bloque le lien "http://cjoint.com/ "
Je vais essayer de chez moi ce soir.
Vous trouverez déja mon code:
Option Explicit
Dim chemin, liste_pni As String
Dim Wbk As Workbook
Dim i, j, der_lig As Integer
Public der_col, nb_siret, k As Integer
Dim MyArea As String
Public liste_siret As Variant
Sub tdb()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Call base
Call siret
For k = 2 To 6 '1ere ligne correspond aux intitulés donc on commence à la 2è ligne
Call filtre(k)
Next
Application.DisplayAlerts = False
Sheets(Array("maquette", "export")).Delete
Range("A1").Select
Application.DisplayAlerts = True
Application.Quit
End Sub
Sub base()
Sheets("export").Select
Range("A1").Select
Range(Selection, Selection.End(xlToRight)).Select
der_col = Cells(1, Cells.Columns.Count).End(xlToLeft).Column
Range(Selection, Selection.End(xlDown)).Select
der_lig = Range("A" & Rows.Count).End(xlUp).Row
MyArea = "=export!R1C1:R" & der_lig & "C" & der_col
ActiveWorkbook.Names.Add Name:="base", RefersToR1C1:=MyArea
End Sub
' Liste siret
Sub siret()
Dim base2 As Variant
Sheets("export").Select
Range("A2").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Name = "base2"
'nettoyage de la zone
Range("ZA1").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Clear
Range("A1:D50000").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range( _
"ZA1"), Unique:=True
nb_siret = Range("ZA2").End(xlDown).Row - 1
'Tri par siret croissant
Range("ZA2:ZD" & nb_siret + 1).Select
Selection.Sort Key1:=Range("ZA2:ZD" & nb_siret + 1), Order1:=xlAscending
Selection.Name = "liste_pni"
' liste siret
Range("ZA2:ZA" & nb_siret + 1).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range( _
"ZZ1"), Unique:=True
Range("ZZ2:ZZ" & nb_siret + 1).Name = "liste_siret"
End Sub
'remplissage de la maquette
Sub filtre(k As Integer)
Application.ScreenUpdating = False
Sheets("Maquette").Copy After:=Sheets("export")
ActiveSheet.Name = "siret_" & Sheets("export").Range("ZA" & k) & Sheets("export").Range("ZC" & k)
Dim feuille_siret As String
feuille_siret = ActiveSheet.Name
Range("base").Rows("1:1").Copy
ActiveSheet.Select
Range("AB2").Select
ActiveSheet.Paste
Range("Y1") = "DC_LBLETTDT"
Range("Z1") = "Type"
Range("AA1") = "SIRET"
Range("AA2") = Sheets("export").Range("ZA" & k) 'DT
Range("Y2") = Sheets("export").Range("ZB" & k) 'Type
Range("Z2") = Sheets("export").Range("ZC" & k) 'siret
Sheets(feuille_siret).Select
Range("Y1:AA2").Select
Dim crit, extr As Range
Set crit = Sheets(feuille_siret).Range("Y1:AA2")
Set extr = Sheets(feuille_siret).Range(Cells(2, 28), Cells(2, 28 + der_col - 1))
'Application.CutCopyMode = False
'zone de criteres
' ActiveWorkbook.Names.Add Name:="crit", RefersTo:= _
' "='" & Sheets(feuille_siret).Name & "'!R1C27:R2C27"
ActiveWorkbook.Names.Add Name:="crit", RefersTo:=crit
'zone d'extraction
Range("AB2").Select
Range(Selection, Selection.End(xlToRight)).Select
ActiveWorkbook.Names.Add Name:="extr", RefersTo:=extr
'filtre
Range("base").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range("crit"), CopyToRange:=Range("extr"), Unique:=True
End Sub
Je vous remercie.
Bonne journéE.
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
8 oct. 2018 à 08:10
8 oct. 2018 à 08:10
Bonjour,
Je vois un filtre élaboré dans la Sub "Siret", et je constate que vous prenez bien 4 colonnes (de A à D), donc 4 critères:
Est-ce bien là votre problème?
Cdlt
Je vois un filtre élaboré dans la Sub "Siret", et je constate que vous prenez bien 4 colonnes (de A à D), donc 4 critères:
Range("A1:D50000").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("ZA1"), Unique:=True
Est-ce bien là votre problème?
Cdlt
jeepipy
Messages postés
70
Date d'inscription
samedi 9 janvier 2010
Statut
Membre
Dernière intervention
9 août 2023
155
8 oct. 2018 à 08:27
8 oct. 2018 à 08:27
Bonjour Frenchie,
je m'excuse de ne pas avoir précisé mais c'est le dernier filtre qui ne fonctionne pas:
Range("base").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range("crit"), CopyToRange:=Range("extr"), Unique:=True
Cordialement
je m'excuse de ne pas avoir précisé mais c'est le dernier filtre qui ne fonctionne pas:
Range("base").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range("crit"), CopyToRange:=Range("extr"), Unique:=True
Cordialement
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
8 oct. 2018 à 09:14
8 oct. 2018 à 09:14
D'après ce que je crois comprendre, l'erreur se situe ici
les critères sont uniquement en ligne 1
Quelle est l'utilité de ces 3 lignes? Si elles n'existent pas, ça fonctionne aussi, non?
Essayez
Set crit = Sheets(feuille_siret).Range("Y1:AA2")
les critères sont uniquement en ligne 1
Set crit = Sheets(feuille_siret).Range("Y1:AA1")
Quelle est l'utilité de ces 3 lignes? Si elles n'existent pas, ça fonctionne aussi, non?
Range("AA2") = Sheets("export").Range("ZA" & k) 'DT Range("Y2") = Sheets("export").Range("ZB" & k) 'Type Range("Z2") = Sheets("export").Range("ZC" & k) 'siret
Essayez
jeepipy
Messages postés
70
Date d'inscription
samedi 9 janvier 2010
Statut
Membre
Dernière intervention
9 août 2023
155
8 oct. 2018 à 11:46
8 oct. 2018 à 11:46
Set crit = Sheets(feuille_siret).Range("Y1:AA2") me prend qu'une seule occurence de l'extraction attendue
Set crit = Sheets(feuille_siret).Range("Y1:AA1") me prend toute la base sans filtre et ce n'est pas ce que j'attends.
Les 3 lignes sont juste là pour moi, pour me repérer.
Merci en tout cas Frenchie.
Set crit = Sheets(feuille_siret).Range("Y1:AA1") me prend toute la base sans filtre et ce n'est pas ce que j'attends.
Les 3 lignes sont juste là pour moi, pour me repérer.
Merci en tout cas Frenchie.
Le Pingou
Messages postés
12197
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
20 novembre 2024
1 450
9 oct. 2018 à 11:53
9 oct. 2018 à 11:53
Bonjour,
Je pense que sans le fichier c'est presque impossible de trouver la petite défaillance dans le code.
https://www.cjoint.com/
Je pense que sans le fichier c'est presque impossible de trouver la petite défaillance dans le code.
https://www.cjoint.com/
jeepipy
Messages postés
70
Date d'inscription
samedi 9 janvier 2010
Statut
Membre
Dernière intervention
9 août 2023
155
9 oct. 2018 à 19:00
9 oct. 2018 à 19:00
vous trouverez ci joint le lien vers mon fichier.
https://www.cjoint.com/c/HJjq7fxpiGp
Merci de votre aide
https://www.cjoint.com/c/HJjq7fxpiGp
Merci de votre aide
Le Pingou
Messages postés
12197
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
20 novembre 2024
1 450
9 oct. 2018 à 22:15
9 oct. 2018 à 22:15
Bonjour,
Je suis absent mercredi tout le jour, reprise jeudi. Patience.
Je suis absent mercredi tout le jour, reprise jeudi. Patience.
yg_be
Messages postés
23338
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
19 novembre 2024
1 551
9 oct. 2018 à 22:45
9 oct. 2018 à 22:45
à ton tour d'expliquer comment provoquer l'anomalie.
Le Pingou
Messages postés
12197
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
20 novembre 2024
1 450
Modifié le 10 oct. 2018 à 09:55
Modifié le 10 oct. 2018 à 09:55
Bonjour yg_be,
C'est bien dommage que nous ne profitons pas de la votre.
C'est bien dommage que nous ne profitons pas de la votre.
yg_be
Messages postés
23338
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
19 novembre 2024
1 551
10 oct. 2018 à 22:00
10 oct. 2018 à 22:00
jeepipy, c'est bien d'avoir partagé ton fichier, on peut maintenant progresser. explique-nous maintenant comment provoquer le comportement inattendu que tu as observé.
jeepipy
Messages postés
70
Date d'inscription
samedi 9 janvier 2010
Statut
Membre
Dernière intervention
9 août 2023
155
11 oct. 2018 à 05:36
11 oct. 2018 à 05:36
Bonjour à tous,
je tiens à m'excuser mais je n'ai pas optimisé au mieux mon fichier pour que vous le testiez correctement.
Je vais le refaire mais mon problème brièvement est que les extractions faites par les filtres ne restituaient pas les différents 'pni'. Ils n'extrayaient que les observations pour un seul 'pni'.
Là en testant, je constate que le filtre fonctionne correctement.
Néanmoins j'ai énormément allégé le nombre de variables (120 variables dans mon fichier initial).
Je reste ouvert à vos suggestions.
je vous remercie.
Cordialement.
je tiens à m'excuser mais je n'ai pas optimisé au mieux mon fichier pour que vous le testiez correctement.
Je vais le refaire mais mon problème brièvement est que les extractions faites par les filtres ne restituaient pas les différents 'pni'. Ils n'extrayaient que les observations pour un seul 'pni'.
Là en testant, je constate que le filtre fonctionne correctement.
Néanmoins j'ai énormément allégé le nombre de variables (120 variables dans mon fichier initial).
Je reste ouvert à vos suggestions.
je vous remercie.
Cordialement.
yg_be
Messages postés
23338
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
19 novembre 2024
1 551
11 oct. 2018 à 21:45
11 oct. 2018 à 21:45
si tout va bien, peux-tu marquer le sujet comme résolu, via la roue dentée à droite du titre?
jeepipy
Messages postés
70
Date d'inscription
samedi 9 janvier 2010
Statut
Membre
Dernière intervention
9 août 2023
155
12 oct. 2018 à 08:42
12 oct. 2018 à 08:42
Merci, je ne savais pas.
jeepipy
Messages postés
70
Date d'inscription
samedi 9 janvier 2010
Statut
Membre
Dernière intervention
9 août 2023
155
12 oct. 2018 à 08:42
12 oct. 2018 à 08:42
Merci à tous.
Mon problème provenait d'un espace dans certaines modalités.
Mon problème provenait d'un espace dans certaines modalités.