Copier coller sous conditions de couleur [Résolu]

Signaler
Messages postés
61
Date d'inscription
jeudi 5 avril 2007
Statut
Membre
Dernière intervention
21 août 2007
-
Messages postés
61
Date d'inscription
jeudi 5 avril 2007
Statut
Membre
Dernière intervention
21 août 2007
-
Bonjour je cherche a crée une macro qui sous une condition de couleur d'une cellule me copierais la ligne entiere dans une autre feuille que je crée au debut...

Ce que j'ai fais ne fonctionne pas ( ça s'arrete pile a la ligne ou il y a de la couleur...)
Quelqu'un pourrait il m'aider ?

Sub envoiesurlautrefeuille()
Worksheets.Add
Worksheets(2).Activate


Dim VARO As Integer
lignefin = Worksheets(2).Cells(65535, 1).End(xlUp).Row
For VARO = 1 To lignefin
If Cells(VARO, 13).Interior.ColorIndex = 3 Then
Range("VARO:VARO").Copy

End If
Next
End Sub

9 réponses

Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
18
Pour éviter les erreurs, tu devrais décarer les variables As Long plutôt que Integer ...

Et tu peux sélectionner ta ligne avec
Rows(VARO).select
Selection.Copy

MPi
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Salut,

essaie comme ceci :

Sub envoiesurlautrefeuille()
Worksheets.Add
Worksheets(2).Activate

    Dim VARO As Integer, lignefin As Integer, lignefin2 As Integer

lignefin =  Worksheets(2).Cells(65535, 1).End(xlUp).Row
For VARO = 1 To lignefin
    If Cells(VARO, 13).Interior.ColorIndex = 3 Then
        Range("M:" & VARO).Copy
        lignefin2 = lignefin2 + 1
        Sheets(Sheets.Count).Select
        Cells(lignefin2, 1).Select
        Selection.Paste
        Sheets(2).Select
    End If
Next

~ <small> Mortalino ~ Colorisation automatique </small>

@++

<hr width ="100%" size="2" />
  --Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~
  
Messages postés
61
Date d'inscription
jeudi 5 avril 2007
Statut
Membre
Dernière intervention
21 août 2007

Non ça ne fonctionne pas :-(
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Je viens de tester celui là, et il fonctionne (vérifie tout de même les cellules, ainsi que les noms de feuilles) :

Sub envoiesurlautrefeuille()
    Dim strName As String

Worksheets.Add
strName =  ActiveSheet.Name
Sheets("Feuil2").Select

    Dim VARO As Integer, lignefin As Integer, lignefin2 As Integer

lignefin = Range("M1").End(xlDown).Row
For VARO = 1 To lignefin
    If Cells(VARO, 13).Interior.ColorIndex = 3 Then
        Range("M" & VARO).Copy
        lignefin2 = lignefin2 + 1
        Sheets(strName).Select
        Cells(lignefin2, 1).Select
        ActiveSheet.Paste
        Sheets("Feuil2").Select
    End If
Next

End Sub

~ <small> Mortalino ~ Colorisation automatique </small>

Privilégie le nom de la feuille plutôt que l'index, cela évite des erreurs.

@++

<hr width ="100%" size="2" />
  --Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~
  
Messages postés
61
Date d'inscription
jeudi 5 avril 2007
Statut
Membre
Dernière intervention
21 août 2007

Malheureusement ca ne fonctionne toujours pas pour moi...
Ca selectionne bien la cellule en rouge mais il y a une erreur au moment de la coller et en plus ca me selectionne que la cellule et non pas la ligne...

:-(
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Pour copier la ligne et non la cellule, remplace
Range("M" 
& VARO).Copy
Par
Range(VARO & ":" & VARO).Copy

Par contre, le fait que ça ne fonctionne pas, ne m'avance pas trop, fait voir le code que tu as adapté (pour les noms de feuilles) ainsi que le message d'erreur (et sur quelle ligne).

@++

<hr width="100%" size="2" />
  --Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~
  
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Oui effectivement, merci MPi,  (j'essaie de me corriger, mais pas évident.)

@++

<hr width="100%" size="2" />
  --Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~
  
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
18
¦¬)

MPi
Messages postés
61
Date d'inscription
jeudi 5 avril 2007
Statut
Membre
Dernière intervention
21 août 2007

Merci