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 :

Valeur conditionnelle d'une cellule selon la couleur d'une autre [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Chargé d'affaire
    Inscrit en
    Février 2020
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 65
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Février 2020
    Messages : 26
    Par défaut Valeur conditionnelle d'une cellule selon la couleur d'une autre
    bonjour

    j'ai un petit problème je n'arrive pas à coder en vba une macro pour un tableau sur excel 2010
    si la valeur de la cellule A1 est en rouge alors la valeur de la cellule B1 est égale à 0.00€,
    si la valeur de la cellule A2 est en rouge alors la valeur de la cellule B2 est égale à 0.00€
    si la valeur de la cellule A3 est en rouge alors la valuer de la cellule B3 est égale à 0.00€ et ainsi de suite
    en boucle jusqu'à la fin du tableau

    MERCI POUR UNE SOLUTION

  2. #2
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 241
    Par défaut
    Bonjour,

    D'après l'énoncé de votre problème, il semblerait que la couleur de fond des cellules de la colonne "A" changerait toute seule, je suppose que ce changement se fait par application d'une MFC. Si c'est bien le cas, il suffit de récupérer et tester la formule de la MFC et suivant le résultat obtenu, appliquer en VBA la valeur 0,00€ aux cellules de la colonne "B".

    Est-ce bien cela? Si Oui, quelle est la formule employée dans la MFC?

    Cdlt

  3. #3
    Membre Expert Avatar de Transitoire
    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Décembre 2017
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Décembre 2017
    Messages : 733
    Par défaut
    Bonjour, compte tenu du peu d'informations, juste un conseil.
    J'imagine que sa couleur lui est donnée par une mise en forme conditionnelle. Au lieu de chercher à connaitre la couleur de la cellule, ne serait-il pas plus simple d'utiliser la même condition que celle qui lui a donnée sa couleur.

    Cordialement

    "Oupps" Bonjour Arturo

    RAJOUT:
    Le code ci-dessous est a mettre à votre sauce.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub test()
    Dim x As Integer
    x = 1
     For Each Cell In Range("A1:A40")  'pour une plage de A1 à A40
        If Cell(x, 1).Value < 0 Then
        Cell(x, 2) = 0
        Else
        Cell(x, 2).Value = Cell(x, 1).Value
        End If
    Next Cell
    End Sub

  4. #4
    Membre averti
    Femme Profil pro
    Chargé d'affaire
    Inscrit en
    Février 2020
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 65
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Février 2020
    Messages : 26
    Par défaut
    Merci pour vos réponses
    non il n'y a pas de mise en forme conditionnelle

    LES sommes au débit sont en noires et lorsque celles ci sont débitées je change la couleur et les mets en rouge(manuellement) et lorsque cette condition est remplie les sommes au credit sont égales à 0.00 c'est pour cela que je souhaite une macro pour que quand la valeur de la cellule A1 est rouge,la cellule B1 est égale à 0.00 € et cela pour tout le tableau

    DEBIT CREDIT
    -19,81 € -19,81 €
    -25,00 € -25,00 €
    -48,00 € -48,00 €
    -150,00 - 0.00 €
    -9,65 € - 0,00 €

    j'espère m'être mieux expliquée

    merci de votre aide

  5. #5
    Membre Expert Avatar de Transitoire
    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Décembre 2017
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Décembre 2017
    Messages : 733
    Par défaut
    Bonsoir,sous réserve que votre rouge soit le même que le mien a mettre ensuite à la sauce de votre document
    Mon code étudie donc toute la plage de A1 a A40 .
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub Test()
    Dim x As Integer
    x = 1
     For Each Cell In Range("A1:A40")  'pour une plage de A1 à A40
        If Cell.Font.ColorIndex = 3 Then
        Cell(x, 2).Value = 0
        Else
        Cell(x, 2).Value = Cell(x, 1).Value
        End If
    Next Cell
    End SubÏ
    Cordialement

  6. #6
    Membre averti
    Femme Profil pro
    Chargé d'affaire
    Inscrit en
    Février 2020
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 65
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Février 2020
    Messages : 26
    Par défaut Valeur conditionnelle d'une cellule selon la couleur d'une autre
    Citation Envoyé par Transitoire Voir le message
    Bonjour, compte tenu du peu d'informations, juste un conseil.
    J'imagine que sa couleur lui est donnée par une mise en forme conditionnelle. Au lieu de chercher à connaitre la couleur de la cellule, ne serait-il pas plus simple d'utiliser la même condition que celle qui lui a donnée sa couleur.

    Cordialement

    "Oupps" Bonjour Arturo

    RAJOUT:
    Le code ci-dessous est a mettre à votre sauce.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub test()
    Dim x As Integer
    x = 1
     For Each Cell In Range("A1:A40")  'pour une plage de A1 à A40
        If Cell(x, 1).Value < 0 Then
        Cell(x, 2) = 0
        Else
        Cell(x, 2).Value = Cell(x, 1).Value
        End If
    Next Cell
    End Sub
    Merci beaucoup pour votre aide
    probleme résolu

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

Discussions similaires

  1. [XL-2007] Programmer le résultat d'une cellule selon la couleur de l'autre
    Par paqmarc dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/07/2018, 00h06
  2. Valeur conditionnelle d'une cellule
    Par hugodu28 dans le forum Excel
    Réponses: 1
    Dernier message: 19/11/2014, 22h06
  3. Copier differentes cellules selon la couleur d'une specifique celulle
    Par Pietrick dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 24/08/2012, 21h27
  4. Formater une cellule selon deux couleurs
    Par nidhal fekih dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/09/2010, 21h59
  5. Réponses: 3
    Dernier message: 13/06/2006, 17h36

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