Excel 2007 - filtre
Bonjour à tous,
J'ai un fichier excel qui contient plusieurs feuilles de calcul.
Chaque feuille de calcul à une colonne dénommée ID Demande (pas toujours en colonne A).
J'ai besoin de filtrer par nombre (5,6,10,12,15,100.. ) sur chaque feuille du fichier pour les coloriser
Très contraignant de filtrer par le filtre habituel d'Excel et en plus de le répéter sur chaque feuille.
j'ai 2000 lignes !
Je pense qu'une macro peut filtrer à partir d'une liste de numéro dans une colonne excel.
avez vous une solution en vba ou autres
Merci beaucoup pour votre aide,
Bonsoir,
Si je suis, ce que tu dis, il en ressort que ce que tu veux faire c'est coloriser !
Alors centre ta question sur l'objectif réel, précise ce qui doit être fait exactement, et fournis un fichier d'illustration permettant d'élaborer des réponses...
Et ne pose pas une question qui n'est pas l'objectif à atteindre...
Les moyens de l'atteindre, on s'en débrouillera !
Bonjour
Pour compléter, lorsqu'on a beaucoup de valeurs de filtre récurrentes, on les liste comme critère et on fait un filtre élaboré...
Rebonjour,
Désolée si ma demande n'est pas assez claire.
Feuille 1(identification des participants) :
colonne A "id demande"
A1 : 1
A2 : 2
colonne B type de participant (responsable, enfant, conjoint..)
colonne C : adresse...
Feuille 2 (détail des prestations excursions commandées) :
Colonne A "ID demande"
colonne B : visite X - colonne c : visite Y ...
j'ai d'autres feuilles dans ce classeur toujours avec ID demande pour la restauration....
Feuille 3 : payé
Colonne A : id DEMANDE
en A1 : 2
en A2 : 21 etc
La personne qui est chargée de la compta m'adresse une liste de ceux qui ont payés (numéro ID Demande).
Je veux pouvoir sélectionner par le filtre ID demande tous ceux qui ont payés à partir de la liste fournie (feuille payé).
je pourrais le faire depuis le filtre mais trop long (liste de + 2000 personnes)
comment puis je faire pour à partir de la liste fournie (PAYE) appliquée un filtre sur ID DEMANDE
Je veux en quelques sortes pouvoir faire un filtre personnalisé à partir de la liste des payés qui est dans une feuille de ce même fichier ou pouvoir coloriser en vert dans la colonne ID DEMANDE (dans l'exemple 2 et 21) de chaque feuille du classeur les personnes qui ont payées
Merci pour votre aide
Ta demande est incomplète, mais tu la confirmes bien ! C'est toi qui n'a pas compris...
1) Tu veux détecter des personnes à partir d'une liste afin d'apposer une signalisation indiquant qu'elles ont payé.
Cela est encore trop sommaire et imprécis, mais l'action est délimitée et l'objectif pourra être certainement précisé (sur pèces !)
2) Tu penses que le filtre est un moyen d'arriver à la solution que tu souhaites ! Ça c'est vouloir influer sur la solution, tenter de restreindre les champs d'investigation auxquels ta question peut conduire, vouloir diriger les intervenants vers une voie prédéfinie...
De grâce ! tu laisses les intervenants réfléchir comme bon leur semble
Et a-contrario, je prends volontiers le pari de ne pas utiliser de filtre pour aboutir à une solution !
3) Et l'essentiel demeure : le fichier.
Fournir un fichier : - parce qu'on ne travaille pas dans le vide...
- cela permet de préciser la configuration des données, de vérifier leur type et leur particularité,
- d'illustrer l'objectif recherché,
- de procéder à divers essais...
Tant que tu ne te décides pas à fournir de fichier, dont la structure et les types de données soient conformes à l'original, et sur lequel on puisse travailler, on parle en l'air...
Cordialement.
bonjour à tous
voici le fichier d'exemple
je souhaiterais que quand en colonne O de la feuille TOTAL FINAL la mention T figure (ici O2) qui correspond à l'ID Demande 208, que dans chaque feuille du classeur, ID DEMANDE correspondante (colonne B de chaque feuille) , ici 208 soit colorisée en vert .
Merci beaucoup pour votre aide.
ChM
Bonjour,
Des changements par rapport aux données initiales... mais ne modifient pas la nature de la question...
Sub CouleurPayé()
Dim n&, i&, clr&, f As Worksheet, d As Object, k
Set d = CreateObject("Scripting.Dictionary")
clr = RGB(0, 176, 80)
Application.ScreenUpdating = False
With Worksheets("TOTAL FINAL")
n = .Range("B" & .Rows.Count).End(xlUp).Row
.Range("B1").Resize(n).Interior.ColorIndex = xlColorIndexNone
For i = 2 To n
If .Cells(i, 15) = "T" Then
k = .Cells(i, 2): d(k) = ""
.Cells(i, 2).Interior.Color = clr
End If
Next i
End With
For Each f In Worksheets
Select Case f.Name
Case "TOTAL FINAL"
Case Else
With f
n = .Range("B" & .Rows.Count).End(xlUp).Row
.Range("B1").Resize(n).Interior.ColorIndex = xlColorIndexNone
For i = 2 To n
k = .Cells(i, 2)
If d.exists(k) Then .Cells(i, 2).Interior.Color = clr
Next i
End With
End Select
Next f
End SubCordialement.
Bonjour et Merci c'est exactement ce que je souhaitais
Sauf que j'ai oublié de préciser que dans ce classeur, il y a en + 2 feuilles sur lesquelles j'ai des tableaux croisés dynamiques qui me servent à faire des stats.
ces feuilles s'appellent CONTROLE et SYNTHESE_PARTICIPANTS
comment écrire cette macro en lui précisant ne pas appliquer sur ces 2 feuilles.
merci beaucoup
Tu les ajoutes à "TOTAL FINAL" (en séparant les noms par des virgules).
Bonjour,
J'ai une nouvelle question concernant l'exploitation du fichier joint :
je souhaiterais pourvoir supprimer en 1 seule fois, la ou les lignes ID xx (que je préciserai) sur chaque feuille du classeur, est il possible de le faire à partir d'une macro ou autres.
En effet, des personnes s'inscrivent plusieurs fois, et je dois ne garder qu'un seul dossier par personnes pour ne pas fausser les données je peux les supprimer sur chaque feuille, mais lourd à gérer.
Merci pour votre aide
CHM92
Bonjour,
Désolé du délai, j'étais absent du Forum depuis la mi-février...
je souhaiterais pourvoir supprimer en 1 seule fois, la ou les lignes ID xx (que je préciserai) sur chaque feuille du classeur
Il faut savoir de quelle façon tu précises les lignes à supprimer...
Cordialement.