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 :

Formatage cellule en fonction des données [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut Formatage cellule en fonction des données
    Bonjour
    j'ai un tableau que je renseigne en colonne Z AA et AB
    Je souhaiterais quand je mets une valeur en Z3 que la cellule W3 soit de couleur VERTE, ainsi de suite pour toutes les lignes de Z
    Je souhaiterais quand je mets une valeur en AA3 que la cellule W3 soit de couleur BLEU, ainsi de suite pour toutes les lignes de AA
    Je souhaiterais quand je mets une valeur en AB3 que la cellule W3 soit de couleur ORANGE, ainsi de suite pour toutes les lignes de AB
    J'ai essayer avec la mise en forme conditionnelle, cela fonctionne , mais des que met mon tableau vierge, je perds la mise en forme conditionnelle
    y a t'il un moyen pour que cette mise en forme soit toujours effective
    cris

  2. #2
    Membre Expert Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Par défaut
    Je vois 3 possibilités :
    - Quand tu mets ton tableau vierge, tu le fais via en collage-spécial valeur pour ne pas perdre la mise en forme.
    - Tu fais une macro qui te remets la mise en forme automatique.
    - Tu fais une macro qui fait la mise en forme.
    Les 3 sont assez simples, mais la première ne demande aucun travail supplémentaire.
    Fais ton choix !

  3. #3
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut
    j'ai mis le code suivant et cela fonctionne.
    y a-t-il un moyen de reduire ce code

    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
    27
    28
    29
    30
    31
    32
    33
    Range("W3:W67").Select
        Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
            "=SI(ESTVIDE($Z3);0;1)"
        Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
        With Selection.FormatConditions(1).Interior
            .PatternColorIndex = xlAutomatic
            .Color = 65280
            .TintAndShade = 0
        End With
        Selection.FormatConditions(1).StopIfTrue = False
        [W1].Select
            Range("W3:W67").Select
        Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
            "=SI(ESTVIDE($AA3);0;1)"
        Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
        With Selection.FormatConditions(1).Interior
            .PatternColorIndex = xlAutomatic
            .Color = 65280
            .TintAndShade = 0
        End With
        Selection.FormatConditions(1).StopIfTrue = False
        [W1].Select
            Range("W3:W67").Select
        Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
            "=SI(ESTVIDE($AB3);0;1)"
        Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
        With Selection.FormatConditions(1).Interior
            .PatternColorIndex = xlAutomatic
            .Color = 65280
            .TintAndShade = 0
        End With
        Selection.FormatConditions(1).StopIfTrue = False
        [W1].Select
    cris

  4. #4
    Membre Expert Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Par défaut
    Je ne sais pas si ça va marcher :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Dim rg As Range
     
    Set rg = Range("W3:W67")
     
    rg.FormatConditions.Add Type:=xlExpression, Formula1:= _
        "=SI(ESTVIDE($Z3);0;1)"
    rg.FormatConditions.Add Type:=xlExpression, Formula1:= _
        "=SI(ESTVIDE($AA3);0;1)"
    rg.FormatConditions.Add Type:=xlExpression, Formula1:= _
        "=SI(ESTVIDE($AB3);0;1)"
     
    rg.FormatConditions(1).Interior.Color = vbGreen
    rg.FormatConditions(2).Interior.Color = vbBlue
    rg.FormatConditions(3).Interior.Color = RGB(255, 165, 0)

  5. #5
    Membre éclairé
    Homme Profil pro
    retraite
    Inscrit en
    Avril 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Espagne

    Informations professionnelles :
    Activité : retraite
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 325
    Par défaut
    ca fonctionne bien
    merci
    cris

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 28/01/2015, 21h31
  2. [XL-2007] Macro pour colorier des cellules en fonction de données
    Par stephane12 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 23/05/2014, 07h51
  3. Réponses: 1
    Dernier message: 04/12/2013, 08h56
  4. Réponses: 2
    Dernier message: 04/05/2012, 07h50
  5. [CR] mise en forme d'un champs texte en fonction des données
    Par niPrM dans le forum SAP Crystal Reports
    Réponses: 6
    Dernier message: 29/06/2004, 11h57

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