Macro:remplir cell1 par rapport couleur cell2

Résolu
Bonjour,
je suis complètement débutant en macro excel.
je voudrais savoir comment remplir une cellule avec un texte en fonction de la couleur d'une autre.
autrement dit:
si la cellule B5 est de couleur bleu alors le message "après-midi apparait dans la cellule C5.
merci d'avance pour votre aide.
jossdi
Configuration: Windows XP
Firefox 2.0.0.15

13 réponses

  1. je pense que tu peux faire un truc du genre
    if cells(2,5).interior = "code couleur" then
    "instructions"
    else
    ...

    endif
    0
    1. si la cellule B5 est de couleur bleu alors le message "après-midi apparait dans la cellule C5.
      if range("B" & i).interior = 5 then
      range("B" & i).value = "après-midi"
      end if

      sert toi du i comme d une variable
      0
      1. le deuxieme range c'est range ("C" & i)
        mais sinon la solution doit marcher!
        0
        1. Bonjour,
          j'ai essayé avec le code suivant:

          Sub technologydetail()
          If Range("B" & i).interioe = 5 Then
          Range("C" & i).Value = "après-midi"
          End If
          Sheets("technologydetail").Select
          End Sub

          mais ça ne fonctionne pas.
          que puisse modifier pour arriver à mes fins?

          Yohann
          0
      2. as tu bien vérifier que c'était le bleu "5" que tu mettais dans la cellule B5?
        pke il y a plein de bleus...
        0
        1. Steefif,
          la macro ne s'exécute même pas.
          j'ai un message d'erreur; le voici:
          erreur d'exécution '1004':
          la méthode 'range' de l'objet'_Global'a échoué
          0
        2. je pense à un truc si je dois prendre i comme une variable, ne faut il pas la déclarer
          0
      3. alorsil faut mettre.interior, je sai spas si c'ets une faute de frappe ou pas, mais t'a smis .interioe dans ton message.
        si c'ets un copier coller faut remédier à ca.
        et avant le range il faut que tu séléctionne le sheet à activer
        en gors sheets("feuil1").activate par exemple.
        voilou.
        essaye avec ca, si t'as d'autres soucis, je vais faire des tests
        0
        1. si il faut que tu mettes tout ca dans une boucle for :

          for i = 1 to Cells(Rows.Count, 1).End(xlUp).Row

          comme ca ca va te faire ton programme sur toutes tes valeurs
          0
          1. Désolé d'être si nul mais je galère grave...
            ci-dessous voici tout le code de ma macro

            Sub technologydetail()
            For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
            If Range("B" & i).Interior = 5 Then
            Range("C" & i).Value = "après-midi"
            End If
            Next
            Sheets("technologydetail").Select
            End Sub

            j'ai essayé de suivre à la lettre tes instructions mais sans résultats
            toujours le même message d'erreur et la ligne "if Range("B"&i).interior = 5 Then" surlignée en jaune peut être est ce sur cette ligne qu'il y a le problème?
            0
            1. je vais jeter un coup d'oeil bouge pas
              0
              1. sub macro_test

                Sheets("Feuil2").Activate
                For j = 1 To 90
                If j Mod 3 = 0 Then
                Cells(j, 2).Interior.ColorIndex = 5
                End If
                Next j

                //là c'ets une phase test j'ai rempli quelques cellules en bleues

                For i = 1 To 90
                Sheets("Feuil2").Activate
                If Cells(i, 2).Interior.ColorIndex = 5 Then
                Sheets("Feuil1").Activate
                Cells(i, 3).Value = "après-midi"
                End If
                Next i
                Sheets("Feuil1").Select
                End Sub

                //et là ca marche par contre il faut changer le nombre dans la boucle for
                //j'ai mis 90
                //mais tu peux changer et mettre ce que tu veux

                voila
                0
                1. ok ça marche!!!!!
                  je te remercie Steefif.
                  ça fait deux jours que je bloquais sur le sujet.....
                  je trouve ça cool de ta part de m'avoir filé un coup de main.
                  il faudra à l'avenir que j'achète un bouquin sur le sujet quand même.

                  a+
                  0
              2. pas la peine, j'ai appris vba il y a 3 semaine smaintenant
                regarde l'aide elle est tres bien.
                et sinon tu as toujours les gens d'ici!
                moi on m'a bcp aidé!
                0
                1. dac je suivrais ton conseil comme toujours!
                  ;-)
                  0
              3. peux tu mettr ele sujet comme résolu stp? ca fait plus joli quand meme!
                =)
                0