VBA Copier le contenu cellules sous condition [Résolu/Fermé]

Signaler
-
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
-
Bien le Bonjour les gens,

Je viens de mettre un pied dans la programmation vba sous excel (mais vraiment juste un pied..) et j'ai déjà besoin de votre pour un cas, j'en suis sûr, des plus simplistes pour vous.

Je cherche à copier d'une feuille vers une autre, le contenu de cellules respectant une certaine mise en forme, du style:

Sur Feuille 2
Si Couleur du fond de la cellule = orange
Alors copier le contenu des cellules orange feuille 2 dans les cellules de la feuille 1 en partant de la cellule active (dans la feuille 1)

J'ai tenté quelque chose avec la prog suivante :

Sheets("Feuille2").Select
If cel.ColorIndex = 45 Then
Range(ActiveCell).Select
Selection.Copy
End If

Sheets("Feuille1").Select
ActiveSheet.Paste
Range(ActiveCell.Offset(1, 0)).Select

Voili voilà, j'ai tenté d'utiliser la fonction SI de base dans excel mais sans résultat.

Je vous remercie par avance de vos lumières.
Bonne journée
Thor-

2 réponses

Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 164
Bonjour,

Voilà une petit exemple à adapter selon ton besoin :

Sub SearchCellColor()
Dim couleur As Long
Dim cl As Range
Dim plage As Range
Dim lig As Long

Set plage = Sheets(2).Range("A1:C10") 'plage de cellule contenant les cellules à tester
lig = 2    'Première ligne de la feuille 1 à renseigner
couleur = 45

For Each cl In plage
    If cl.Interior.ColorIndex = couleur Then
        cl.Copy Destination:=Sheets(1).Range("A" & lig)
        lig = lig + 1   'Permet de copier sur la ligne suivante
    End If
Next cl
    
End Sub


Bon courage

;o)
OK ok

Merci bien pour ton aide

Bonne journée !

Thor-
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 164
De rien.

Bonne continuation

;o)

Polux