Formule excel si A1 en fond rouge alors

jerem5151 Messages postés 4 Statut Membre -  
Mike-31 Messages postés 18205 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour, j'ai un problème pour créer une formule sur Excel.
J'aimerais pouvoir que: si par exemple A1 à un fond rouge que cette case sois recopier en feuille 2 par exemple et que si il n'y a pas de fond couleur qu'il ne fasse rien.

Je sais pas si c'est possible, je n'est trouver aucune réponse dans ce sens par contre pleins dans le sens inverse. Si ce n'est pas possible avec un fond de couleur j'avais également envisagé avec un texte qui serait en gras ou italique.
Si quelqu'un à la solution ou une idée je suis preneur merci

6 réponses

  1. Mike-31 Messages postés 18205 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Salut,

    Le fond rouge de ta cellule, à été colorisé manuellement ou par mise en forme conditionnelle, si c'est le cas quel est la formule de ta mise en forme

    As tu quelques notions en VBA (macro)
    0
  2. jerem5151 Messages postés 4 Statut Membre
     
    Le fond rouge est fait a partir d'une macro quand besoin est. Oui j'ai quelques notion en macro.
    0
  3. jerem5151 Messages postés 4 Statut Membre
     
    cela n'inspire personne???
    0
  4. Mike-31 Messages postés 18205 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    Je t'avais posté une réponse qui apparemment n'a pas été prise en compte,

    pour copier la cellule A1 si elle est rouge vers la cellule A2 feuille 2

    Sub Macro1()
    If [A1].Interior.ColorIndex = 3 Then [A1].Copy
    Sheets("Feuil2").Select
    Range("A2").PasteSpecial Paste:=xlPasteValues
    Application.CutCopyMode = False
    End Sub

    Mais je pense que tu souhaites plutôt faire un balayage de la colonne A et copier les cellules vers la feuille 2 colonne A les une à la suite des autres

    Sub Macro2()
    Dim Lig As Long
    Dim Col As String
    Dim NbrLig As Long
    Dim NumLig As Long
    Dim LigFin As Long
    Col = "A"
    With Sheets("Feuil1")

    NbrLig = .Cells(65536, Col).End(xlUp).Row
    For Lig = 1 To NbrLig
    If .Cells(Lig, Col).Interior.ColorIndex = 3 Then
    .Cells(Lig, Col).Copy
    Sheets("Feuil2").Activate
    LigFin = Range("A65536").End(xlUp).Row + 1
    NumLig = 1
    NumLig = NumLig + 1
    Cells(LigFin, 1).Select
    LigFin = LigFin + 1
    ActiveCell.PasteSpecial Paste:=xlPasteValues
    End If
    Next
    End With
    End Sub
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. jerem5151 Messages postés 4 Statut Membre
     
    Merci pour cette réponse. Il faut que je recopie texto ceci ou il y a quelques phrases a changer ?
    0
  7. Mike-31 Messages postés 18205 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    Ce code copiera les données de la Feuil1 colonne A dont le fond des cellules est de couleur rouge sur la Feuil2 colonne A les unes à la suite des autres. il suffit de coller le code dans un module et l'associer à un bouton ou le coller dans les propriétés d'un controle activex

    Sub Macro2()
    Dim Lig As Long
    Dim Col As String
    Dim NbrLig As Long
    Dim NumLig As Long
    Dim LigFin As Long
    Col = "A"
    With Sheets("Feuil1")
    NbrLig = .Cells(65536, Col).End(xlUp).Row
    For Lig = 1 To NbrLig
    If .Cells(Lig, Col).Interior.ColorIndex = 3 Then
    .Cells(Lig, Col).Copy
    Sheets("Feuil2").Activate
    LigFin = Range("A65536").End(xlUp).Row + 1
    NumLig = 1
    NumLig = NumLig + 1
    Cells(LigFin, 1).Select
    LigFin = LigFin + 1
    ActiveCell.PasteSpecial Paste:=xlPasteValues
    End If
    Next
    End With
    End Sub

    A+
    Mike-31

    Une période d'échec est un moment rêvé pour semer les graines du savoir.
    0