Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Action sur chaque item d'un filtre

8 réponses
Avatar
René Delcourt
Bonjour à toutes et à tous,
Je cherche un code VBA qui me permettra de traiter automatiquement le
résultat d'une colonne filtrée du style

For each Item de la colonne filtrée
Action
next

Merci pour vos lumières...
--
René Delcourt

8 réponses

Avatar
Coetera
> Je cherche un code VBA qui me permettra de traiter automatiquement le
résultat d'une colonne filtrée du style



**********

Exemple sur colonne A

Sub Macro1()
For Each c In Range("a2", [A65536].End(3)).SpecialCells(xlCellTypeVisible)
c.Interior.ColorIndex = 6
Next
End Sub

Etc
Avatar
René Delcourt
OK, je relis mon libellé et concède qu'il prête à confusion...sorry et merci
pour la réponse!

Ce que j'ai :
Une base de données Excel de 20 champs et 20000 enregistrements.
dans le 10ème champs, j'ai 10 valeurs différentes possibles mais elles
pourraient passer à 12,15...; il y a donc lieu de récupérer ces 10,12,15
valeurs (celles qui sont dans la liste du filtre)

Ce que je veux faire :
Pour chacune de ces 10,12 ou 15 valeurs, entreprendre une action.

La macro doit donc :
activer comme filtre le 1er item de la liste et entreprendre l'action
activer comme filtre le 2ème item de la liste et entreprendre l'action
activer comme filtre le 3ème item de la liste et entreprendre l'action etc...
jusqu'au dernier.

J'espère avoir été plus clair
--
René Delcourt


"Coetera" a écrit :

> Je cherche un code VBA qui me permettra de traiter automatiquement le
> résultat d'une colonne filtrée du style

**********

Exemple sur colonne A

Sub Macro1()
For Each c In Range("a2", [A65536].End(3)).SpecialCells(xlCellTypeVisible)
c.Interior.ColorIndex = 6
Next
End Sub

Etc





Avatar
Coetera
> Une base de données Excel de 20 champs et 20000 enregistrements.
dans le 10ème champs, j'ai 10 valeurs différentes possibles mais elles
pourraient passer à 12,15...; il y a donc lieu de récupérer ces 10,12,15
valeurs (celles qui sont dans la liste du filtre)



*******

La (une) méthode :
Extraire ailleurs, la liste des valeurs uniques par l'intermédiaire du filtre
élaboré (extraction sans doublons)
Ensuite boucler sur chacune des valeurs de cette liste pour ...faire ce que tu
veux !

Si tu n'arrives pas à coder la chose fais signe

Etc
Avatar
René Delcourt
Merci.
J'avais cette solution en réserve parce que peu "élégante" et aussi parce
que, dans un tableau croisé dynamique, il y a moyen d'agir sur chaque item
d'une "droplist".
En attendant, je vais adopter ta proposition.
Encore merci.
--
René Delcourt


"Coetera" a écrit :

> Une base de données Excel de 20 champs et 20000 enregistrements.
> dans le 10ème champs, j'ai 10 valeurs différentes possibles mais elles
> pourraient passer à 12,15...; il y a donc lieu de récupérer ces 10,12,15
> valeurs (celles qui sont dans la liste du filtre)

*******

La (une) méthode :
Extraire ailleurs, la liste des valeurs uniques par l'intermédiaire du filtre
élaboré (extraction sans doublons)
Ensuite boucler sur chacune des valeurs de cette liste pour ...faire ce que tu
veux !

Si tu n'arrives pas à coder la chose fais signe

Etc





Avatar
Coetera
> J'avais cette solution en réserve parce que peu "élégante"



***********

"L'élégance" n'est surement pas la "qualité" à priviligier...
Il s'agit de chercher en priotité la rapidité d'exécution (notamment quand il
s'agit de longues listes)

Etc
Avatar
LE TROLL
Un filtre ? un filtre à café ?

--
Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"René Delcourt" a écrit dans le message de
news:
Bonjour à toutes et à tous,
Je cherche un code VBA qui me permettra de traiter automatiquement le
résultat d'une colonne filtrée du style

For each Item de la colonne filtrée
Action
next

Merci pour vos lumières...
--
René Delcourt


Avatar
LE TROLL
bo, faudrait arrêter de répondre là, car ça pollue ma pollution !

--
Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"Coetera" a écrit dans le message de
news:
J'avais cette solution en réserve parce que peu "élégante"



***********

"L'élégance" n'est surement pas la "qualité" à priviligier...
Il s'agit de chercher en priotité la rapidité d'exécution (notamment quand
il s'agit de longues listes)

Etc



Avatar
René Delcourt
J'entendais par "élégante" ce que j'ai l'habitude de trouver dans ce forum à
savoir un script, le mien, 20 lignes qui fait la même chose qu'un "élégant",
en 5 lignes.

J'espère que le Troll perdu a retrouvé sa caverne :-)
--
René Delcourt


"Coetera" a écrit :

> J'avais cette solution en réserve parce que peu "élégante"

***********

"L'élégance" n'est surement pas la "qualité" à priviligier...
Il s'agit de chercher en priotité la rapidité d'exécution (notamment quand il
s'agit de longues listes)

Etc