Coloriser une ligne en fonction de critères spécifiques

Bonjour,

Débutant sur Excel, je suis confronté à une difficulté que je n'arrive pas à résoudre.

Je souhaite coloriser les lignes de mon tableur à raison de critères spécifiques de façon à en améliorer la lisibilité. Les règles de mise en forme conditionnelles ne me permettent pas, sauf erreur de ma part, à répondre à mon besoin.

Au sein d'une colonne A, sont présents des nombres soit uniques, soit en "doublon". Ces nombres ont été triés du plus petit au plus grand et forment "des blocs" lorsque leur valeur est la même. La difficulté est que la suite de ces nombres est "aléatoire" : deux nombres impairs ou pairs peuvent se suivre ou, inversement il peut y avoir alternance de pairs et d'impairs.

Je souhaite que ces "blocs" ressortent afin de faciliter le traitement qui suivra. Dès lors, j'aimerais que chaque bloc soit colorisé d'une couleur ou que chaque bloc se distingue du précédent par une couleur distingue du précédent (alternance de couleur par bloc).

Pour mieux me faire comprendre, je joins à mon post un classeur Excel avec :

  1. en feuille 1 le tableau vierge,
  1. en feuille 2 un tableau dont quelques lignes ont été traitées manuellement.

Je précise que je ne maitrise pas VBA, mais si la solution ne peut se concevoir qu'à travers VBA ; je chercherais comment l'implémenter.

Quelles solutions pourraient selon vous être mises en oeuvre afin d'obtenir le résultat désiré ?

Olivier.

Bonjour

Ci joint ma solution par macro

(elle se lance quand on double clic sur la feuille 1)

A+ François

Bonjour,

Merci beaucoup fanfan38 pour cette solution qui réponds à mon besoin.

Je souhaiterais néanmoins affecter la macro à un objet placé en feuille 2, le travail de colorisation recherché devant se réaliser sur la feuille 1. En effet, le déclenchement par "double clic" interfère avec le travail du tableau et les nombreuses saisies que je suis amené à effectuer.

Comme l'on peut le voir ci-dessous, j'ai modifié la première ligne pour retrouver ma macro dans une liste qui m'a permis de l'affecter à un objet. Cependant, je sèche quant à la solution qui s'offre à moi afin de pouvoir exécuter ce code depuis la feuille 2 avec un résultat feuille 1.

Option Explicit

Sub Macroinventaire(ByVal Target As Range, Cancel As Boolean)
  Dim i As Long, coul, mavar
  mavar = Range("A2").Value
  coul = RGB(221, 235, 247)
  For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
    If Range("A" & i).Value <> mavar Then
      If coul = RGB(221, 235, 247) Then coul = RGB(255, 242, 204) Else coul = RGB(221, 235, 247)
      mavar = Range("A" & i).Value
    End If
    Range(Range("A" & i + 1), Range("E" & i)).Interior.Color = coul
  Next
End Sub

Aurais-tu s'il te plaît une solution à me proposer ?

Olivier

Top ! Merci beaucoup pour ton aide

Rechercher des sujets similaires à "coloriser ligne fonction criteres specifiques"