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 :

mise en forme automatique de plusieurs lignes


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 28
    Par défaut mise en forme automatique de plusieurs lignes
    Bonsoir à tous,

    Je souhaites mettr en forme conditionnelle des lignes selon la date du jour
    Par exemple vert si les informations de la cellles sont < à l adate du jour et cela pour 100 200 voir 500 lignes(en vba)

    Est-ce que vous auriez une idée svp car ce petit code ne fonctionne pas ?
    Merci par avance et bonne soirée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub COULEUR()
     Sheets("DPOLEL").Select
     If Range("Q2:Q38") < Range("A4") Then
     Range("B2:U2").Select
            With Selection.Interior
            .ColorIndex = 4
            .Pattern = xlSolid
        End With
        End If
    End Sub

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 28
    Par défaut forme conditionnelle vba
    Bonjour,

    Je suis dévutant mais je vais essayé d'être plus clair puisque je n'ai pas de réponse. En faite je ne voudrais pas créer 500 lignes comme ci-dessous car sinon je n'ai pas fini.

    Merci d'avance pour vos réponses

    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
    19
    20
    21
    22
    23
    24
    25
    26
    Sub COULEUR()
    Sheets("DPOLEL").Select
    If Range("Q2") < Range("A4") Then
    Range("B2:U2").Select
    With Selection.Interior
    .ColorIndex = 4
    .Pattern = xlSolid
     
    Else If Range("Q3") < Range("A4") Then
    Range("B3:U3").Select
    With Selection.Interior
    .ColorIndex = 4
    .Pattern = xlSolid
     
    Else If Range("Q4") < Range("A4") Then
    Range("B4:U4").Select
    With Selection.Interior
    .ColorIndex = 4
    .Pattern = xlSolid
     
    ................
     
     
    End With
    End If
    End Sub

  3. #3
    Membre émérite Avatar de sabzzz
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 748
    Par défaut
    bonjour RAID14,

    voilà j'ai ajouté une boucle, et aussi j'ai enlevé Pattern = xlSolid car c'est ça qui est mit pas default,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub COULEUR()
    Sheets("DPOLEL").Select
    For Each c In Range("Q2:Q38")
     If Range(c.Address) < Range("A4") Then
      Range(c.Address).Interior.ColorIndex = 4
     End If
    Next
    End Sub

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 28
    Par défaut
    Bonjour et merci Isabelle

    J'ai un peu modifié ton code qui marchait très bien afin que si j'ai des cases vides il ne prend pas par défaut la date d'excel qui est je crois 1904.


    Néanmois j'aurais une dernière question à propos de " Range(c.Address).Interior.ColorIndex = 4" car le top serait que je puisse mettre en vert non pas seulement la cellule mais les cellules de la colonne B à U de la ligne concernée.

    Je vais mettre résolu mais si tu as une idée, merci d'avance.

    Patrice

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub LIGNESVERTES()
    Sheets("DPOLEL").Select
    For Each c In Range("Q2:Q2000")
     If Range(c.Address) < Range("A4") And Range(c.Address) > Range("A5") Then
      Range(c.Address).Interior.ColorIndex = 4
     End If
    Next
    End Sub

  5. #5
    Membre émérite Avatar de sabzzz
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 748
    Par défaut
    bonjour Patrice,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range(Cells(c.Row, "B"), Cells(c.Row, "U")).Interior.ColorIndex = 4

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 28
    Par défaut
    Super merci Isabelle

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Mise en forme automatique de plusieurs fichiers
    Par anaist dans le forum VBA Word
    Réponses: 2
    Dernier message: 29/11/2012, 12h40
  2. Réponses: 8
    Dernier message: 19/06/2006, 16h31
  3. insertion automatique de plusieurs lignes dans mysql
    Par dejiein dans le forum Requêtes
    Réponses: 2
    Dernier message: 02/06/2006, 10h41
  4. Mise en forme automatique d'un tableau
    Par Gestion dans le forum Access
    Réponses: 2
    Dernier message: 24/03/2006, 22h19
  5. mise en forme automatique du code a 80 colonnes ??
    Par benwa dans le forum JBuilder
    Réponses: 1
    Dernier message: 27/03/2005, 22h43

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