Bonjour à tous et meilleurs voeux!!
Est ce que ce sont les fêtes de fin d'année qui ont embué mon cerveau mais je ne vois pas où cela cloche....
Si une bonne âme pouvait m'éclairer
Ci-joint fichier
Merci.
Bonjour à tous et meilleurs voeux!!
Est ce que ce sont les fêtes de fin d'année qui ont embué mon cerveau mais je ne vois pas où cela cloche....
Si une bonne âme pouvait m'éclairer
Ci-joint fichier
Merci.
Bonjour,
Plutôt que de déposer un classeur qui nous oblige à l'ouvrir, de regarder qu'elle feuille est concernée, examiner ton code, deviner ce que tu cherches à faire et ce qui cloche. Ce qui ne répond pas non plus à l'esprit d'un forum où en principe chacun doit pouvoir prendre connaissance du problème posé et des solutions apportées ou proposées et ce sans avoir à ouvrir une multitudes de classeurs.
Donc, je te suggère d'expliquer succinctement ce que tu souhaites faire, avec quelle base de données (non de feuille, et/ou cellules concernée), le code VBA que tu as utilisé le problème rencontré avec le message d'erreur éventuel etc...
Un peu de lecture éventuellement sur le sujet Les filtres avancés ou élaborés dans Excel
Philippe Tulliez
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer suret si celle-ci est pertinente pensez à voter
Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier
Bonjour Philippe,
J'ai bien lu ton tuto mais n'ai pas trouvé réponse à ma question.
Je pensais qu'en postant un fichier c'était beaucoup plus parlant
Par ce code je pensais que cela voulait dire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Sub Filtrer() Application.ScreenUpdating = False Sheets("BASE").Range("Liste").AdvancedFilter _ Action:=xlFilterCopy, _ CriteriaRange:=Sheets("CRITERE").Range("Critère"), _ CopyToRange:=Sheets("RESULTAT").Range("Extraction") Application.ScreenUpdating = True End Sub
Je cherche dans la plage ("Liste") de la feuille ("BASE") selon les critères de la plage ("Critère") de la feuille ("CRITERE"), j'extraie les données sur la plage("Extraction") de la feuille ("RESULTAT").
Or message d'erreur : "Nom de champ introuvable.."
Est ce que cela ne proviendrait pas du fait que ma zone "critère" est composée par la colonne "A" et contient des cellules vides?
Bonjour,
Est-ce que sans le code VBA, tu arrives à faire l'exportation des données filtrées ?
[EDIT]
A la relecture de ton code VBA, je constate que tu utilises une plage nommée (Extraire) qu'Excel utilise (pour la version française) pour la réalisation du filtre avancé donc il y a conflit et si mes souvenirs sont bons Critère aussi est utilisé. Donc prends comme nom par exemple Exportation et pnCriteria
De plus, les adresses des plages doivent être précises. par exemple pour la zone des critères il faut bien sélectionner les étiquettes de colonnes et les cellules où se trouvent les critères. exemple $A$1:$B$3.
Philippe Tulliez
Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer suret si celle-ci est pertinente pensez à voter
Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier
Bonjour doune37,
Bonjour Philippe,
Le filtre avancé fait la grimace. Il n’apprécie pas que l’étiquette de la première colonne de la table de données soit une formule (LIGNE()-1)
Cordialement.
Bonsoir,
Eviter les noms de champ exotiques
Jacques Boisgontier
Bonjour,
Après avoir écouté toutes vos remarques et fait quelque recherches, j'ai résolu mon problème
J'ai effectué 2 modifications:
- Modification de mes entêtes de colonnes dites éxotiques (dû à une importation de fichier).
- Redéfinition de ma zone "Critère" par "SELECTION" et ajout de cette formule qui permet de la rendre "extensible": =DECALER(CRITERE!$A$1;;;NBVAL(CRITERE!$A:$A))
Merci à vous pour vos précieux conseils.![]()
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager