Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

macro pour selectionner uniquement des cellules de couleurs dans une colonne

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

michel.dupont

XLDnaute Occasionnel
Bonjour
Comment parvient-on par macro dans plage par exemple a5:a100 à sélectionner uniquement les cellules en police rouge et les copier pour les coller dans une seconde feuille par exemple à partir de la cellule A8
merci de votre aide
Michel
 
Re : macro pour selectionner uniquement des cellules de couleurs dans une colonne

Bonjour à tous

michel.dupont
Tu as essayé d'adapter les codes VBA fournis dans cet autre fil que tu as initié ?
https://www.excel-downloads.com/thr...n-txt-a-partir-dune-cell-de-reference.225289/
Car on y trouve de quoi solutionner cette question-ci...

Voici par exemple une façon de faire (test OK sur mon PC)
Code vb:
Sub a()
Dim c As Range, cellrouge$
For Each c In Selection 'ici remplacer Selection par la plage concernée
If c.Font.ColorIndex = 3 Then
cellrouge = cellrouge & "," & c.Address
End If
Next
Range(Mid(cellrouge, 2, Len(cellrouge) - 1)).Select
Selection.Copy Feuil2.Range("A1") ' modifier la plage de destination
End Sub





je te laisse faire les adaptations nécessaire pour que cela fonctionne avec la plage A5:A500 recopiée en A8 sur la feuille 2
 
Dernière édition:
Re : macro pour selectionner uniquement des cellules de couleurs dans une colonne

Bonsoir Michel, Jean-Marie,

Sur Excel 2010 le filtre automatique permet de filtrer les couleurs :

Code:
Private Sub Worksheet_Activate()
Dim source As Range, dest As Range, coul
Set source = Feuil1.[A4:A100] 'Codename de la feuille
Set dest = [A7]
coul = RGB(255, 0, 0) 'rouge
Application.ScreenUpdating = False
dest.Resize(Rows.Count - dest.Row + 1).Clear 'RAZ
With source
  .AutoFilter 1, coul, xlFilterFontColor 'filtre automatique
  .SpecialCells(xlCellTypeVisible).Copy dest
  .Parent.AutoFilterMode = False 'désactive le filtre
End With
End Sub
La macro est dans le code de Feuil2 et se déclenche quand on active la feuille.

Fichier joint.

Bonne nuit et A+
 

Pièces jointes

Re : macro pour selectionner uniquement des cellules de couleurs dans une colonne

Bonjour Michel, Jean-Marie, le forum,

S'il y a des formules il peut être nécessaire de prendre des précautions avec une colonne auxiliaire.

C'est le cas de ce fichier (2) où toutes les cellules filtrées sont en tête de liste.

Testez-le avec la macro du post #3 et avec celle-ci :

Code:
Private Sub Worksheet_Activate()
Dim source As Range, dest As Range, coul
Set source = Feuil1.[A4:A100] 'CodeName de la feuille
Set dest = [A7]
coul = RGB(255, 0, 0) 'rouge
Application.ScreenUpdating = False
dest.Resize(Rows.Count - dest.Row + 1).Clear 'RAZ
source(, 2).EntireColumn.Insert 'colonne auxiliaire, les formats sont copiés
With source.Columns(2)
  .Value = source.Value 'copie les valeurs
  .AutoFilter 1, coul, xlFilterFontColor 'filtre automatique
  .SpecialCells(xlCellTypeVisible).Copy dest
  .EntireColumn.Delete
End With
End Sub
A+
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…