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 :

Se baser sur les valeurs d'une colonne d'une feuille 1 pour colorer d'autres cellules d'une feuille 2


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 113
    Par défaut Se baser sur les valeurs d'une colonne d'une feuille 1 pour colorer d'autres cellules d'une feuille 2
    Salut tout le monde,

    J'espère que vous allez bien ,

    SVP si quelq'un a une idée sur comment réaliser ce code en VBA , vraiment je suis bloquée

    J'ai deux feuilles 1 et 2 en Excel et je désire colorier l'intérieur des cellules de la feuille 2 en se basant sur plusieurs conditions :

    La feuille 2 contient une case où il est affiché le mois, ce code doit etre capable d'aller chercher la colonne ou il y a le même mois , de se baser sur les valeurs insérées dans cette colonne ,pour colorier chaque zone ( a, b ,c , d ...) en dans le tableau de la feuille 2 suivant des conditions :

    si la valeur entre 0,1 et 0,5 alors colorer en rouge la case correspondante dans feuille 2
    si la valeur entre 0,6 et 1 alors colorer en vert la case correspondante dans feuille 2
    s'il trouve une case vide alors colorer en blanc la case correspondante dans feuille 2

    Ci joint le fichier excel pour bien rapprocher l'idée

    P.S : On pourra changer le mois de la feuille 2 et répéter la même action

    Je vous remercie d'avance
    Fichiers attachés Fichiers attachés

  2. #2
    Membre émérite
    Homme Profil pro
    Programmeur analyste
    Inscrit en
    Février 2009
    Messages
    546
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur analyste
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2009
    Messages : 546
    Par défaut
    Citation Envoyé par rihab92 Voir le message
    si la valeur entre 0,1 et 0,5 alors colorer en rouge la case correspondante dans feuille 2
    si la valeur entre 0,6 et 1 alors colorer en vert la case correspondante dans feuille 2
    s'il trouve une case vide alors colorer en blanc la case correspondante dans feuille 2
    Voila

    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    Sub test()
     
        Dim Nom_Du_Mois As String
        Dim i As Integer
        Dim Trouver_Colonne_Mois As Boolean
     
        Trouver_Colonne_Mois = False
     
        Sheets("Feuil2").Select
        'récupérer nom du mois
        Nom_Du_Mois = Range("C2").Value
     
     
     
        '========================================
        'trouver la bonne colonne selon le mois
        Sheets("Feuil1").Select
        For i = 3 To 14
            If Cells(6, i) = Nom_Du_Mois Then
                Trouver_Colonne_Mois = True
                Exit For
            End If
        Next
        '========================================
     
        If Trouver_Colonne_Mois = True Then
            For j = 7 To 19
     
                If Cells(j, i).Value = "" Then
                    For b = 3 To 12
                        For bb = 4 To 17
                            If Worksheets("Feuil2").Cells(bb, b).Value = Cells(j, 2).Value Then Worksheets("Feuil2").Cells(bb, b).Interior.ColorIndex = 2
                        Next
                    Next
                ElseIf Cells(j, i).Value <= 0.5 Then
                    For r = 3 To 12
                        For rr = 4 To 17
                            If Worksheets("Feuil2").Cells(rr, r).Value = Cells(j, 2).Value Then Worksheets("Feuil2").Cells(rr, r).Interior.ColorIndex = 3
                        Next
                    Next
                ElseIf Cells(j, i).Value > 0.5 And Cells(j, i).Value <= 1 Then
                    For v = 3 To 12
                        For vv = 4 To 17
                            If Worksheets("Feuil2").Cells(vv, v).Value = Cells(j, 2).Value Then Worksheets("Feuil2").Cells(vv, v).Interior.ColorIndex = 4
                        Next
                    Next
                Else
                    MsgBox Cells(j, i).Value & " ne rencontre pas les conditions"
                End If
     
            Next
        Else
            MsgBox "Aucun mois à été trouvé."
        End If
     
        MsgBox "Fin"
     
    End Sub

  3. #3
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Sauf s'il est impératif d'utiliser du VBA dans ce projet, l'outil Mise en forme conditionnelle fait très bien cela sans y avoir recours.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  4. #4
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    113
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 113
    Par défaut
    Gnaaaaaaaaaaaaaaain ,


    je vous remercie énoooormément

    Je vous dois beaucoup


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

Discussions similaires

  1. [XL-2010] Créer des liens hypertextes automatiquement sur les valeurs d'une colonne
    Par Mikayel dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 31/10/2014, 15h22
  2. Réponses: 2
    Dernier message: 08/09/2014, 13h44
  3. Trier une Map sur les valeurs de façon décroissante
    Par ddams dans le forum Collection et Stream
    Réponses: 13
    Dernier message: 27/12/2011, 18h33
  4. Filtrer une liste sur les valeurs d'une colonne
    Par julien.63 dans le forum SharePoint
    Réponses: 3
    Dernier message: 13/02/2009, 08h43
  5. Réponses: 2
    Dernier message: 07/07/2008, 18h24

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