IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

format remplissage cellule


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Octobre 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1
    Par défaut format remplissage cellule
    Bonjour,

    je dois dans un fichier excel générer une macro qui permet d'identifier les conditions suivantes afin de déterminer la couleur de remplissage de la ligne :

    si le contenu cellule de la ligne (ex: dans D5 j'ai TOTO) est identique à la cellule précédente (D4), alors je garde le même format de remplissage sinon, je change de couleur.

    j'ai écrit le code suivant mais ça ne fonctionne pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Dim i As Integer 'déclare la variable i (Incrément de ligne)
        Dim j As Integer 'déclare la variable j (Incrément de colonne)
     
     
    For i = 1 To 350
    If Cells(i + 6, 4) = Cells(i + 5, 4) And Cells(i + 5, 4).Interior.ColorIndex = 2 Then Rows(i + 6).Interior.ColorIndex = 2
    If Cells(i + 6, 4) = Cells(i + 5, 4) And Cells(i + 5, 4).Interior.ColorIndex = 20 Then Rows(i + 6).Interior.ColorIndex = 20
    If Cells(i + 6, 4) <> Cells(i + 5, 4) And Cells(i + 5, 4).Interior.ColorIndex = 2 Then Rows(i + 6).Interior.ColorIndex = 20
    If Cells(i + 6, 4) <> Cells(i + 5, 4) And Cells(i + 5, 4).Interior.ColorIndex = 2 Then Rows(i + 6).Interior.ColorIndex = 2
    Next i
    End If
    Merci pour votre aide !

    A+

  2. #2
    Membre Expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Par défaut
    Bonjour,

    Essaie comme cela
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Sub Test()
    Dim Plage As Range, Cel As Range
        With Worksheets("Feuil1")
            Set Plage = .Range("D7:D356")
            Plage.EntireRow.Interior.ColorIndex = 20
            For Each Cel In Plage
                If Cel = Cel.Offset(-1, 0) And Cel.Offset(-1, 0).Interior.ColorIndex = 2 Then
                    Cel.EntireRow.Interior.ColorIndex = Cel.Offset(-1, 0).Interior.ColorIndex
                Else
                    If Cel.Offset(-1, 0).Interior.ColorIndex = 2 Then
                        Cel.EntireRow.Interior.ColorIndex = 20
                    Else
                        Cel.EntireRow.Interior.ColorIndex = 2
                    End If
                End If
            Next Cel
        End With
    End Sub
    Cordialement.

Discussions similaires

  1. [PEAR][Spreadsheet] PHP/EXPORT EXCEL : nombre de formats de cellule différents !
    Par joe_le_mort dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 27/10/2005, 17h21
  2. [VB.NET]Format de cellules Excel
    Par seemax dans le forum Windows Forms
    Réponses: 2
    Dernier message: 01/08/2005, 16h03
  3. [excel] format de cellule
    Par alpachico dans le forum Excel
    Réponses: 5
    Dernier message: 28/07/2005, 10h09
  4. Format des cellules en Ole Excel
    Par kurul1 dans le forum C++Builder
    Réponses: 9
    Dernier message: 05/04/2005, 16h20
  5. [VBA] Access-> Excel Format de cellule
    Par toflofr dans le forum VBA Access
    Réponses: 19
    Dernier message: 31/07/2003, 14h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo