Mise en couleur cellule sur autre feuille

Bonjour le Forum

Voici ma nouvelle demande

de vérifier voir de modifier une cellule et de changer la couleur

suivant la demande de la cellule d'une autre pagep

C'est très difficile a vous expliquer

alors voici un exemple simple de ma demande

Merci a tous les intervenants

>Bonne journée, et merci d'avance

toutes les formules que j'ai reçu jusqu'a présent fonctionne imppécable , avec quelques modifs.

alors merci

Bonjour Gabinos,

Et les autres cellules, elles restent grises ?

Bonsoir le Forum

Pour répondre à vba-new

oui les cellules reste grises

"en parlant de grises il faut une sacrée matière grise pour résoudre cette demande que je suis incapable de réaliser"

bonne soirée

Re,

C'est normal qu'on ait pas le même nombre de colonne entre chaque plage ? Notamment colonnes Y à AG, on en a 9 alors que les autres en comptent 8. Ça compliquerait les choses !

suite

l'exemple est pas 100% il n'est pas conforme à ma demande

c'est sur 8 colonnes

voici le fichier transformé

bonne soirée

Ah ok. C'est moins compliqué comme ça.

Ton fichier en retour :

Merci VBA-NEW

d'après l'exemple c'est parfait

c'est tout ce que j'attendais

je mais en pratique dans mon fichier qui est trop lourd pour mettre sur le site

je vous tient au courant

mais bravo "Fortiche "

-- Mer Aoû 03, 2011 11:18 pm --

suite

ça fonctionne parfaitement a la demande

mais le passif est effacé

si on applique 1 2=5

c'est ok

si j'applique 1 10 =3

c'est ok mais les cases précédentes 1 2=5 sont effacées

il faudrais que le passif reste sur le tableau sauf si nouvelle données

c'est pas simple à expliquer, mais vu votre connaissance , vous aller trouver le Hic

en tout cas merci de cette formule;

bonne soirée.

-- Mer Aoû 03, 2011 11:19 pm --

C'est pour ça qu'à un moment donné je t'ai demandé si les autres cellules restaient grises.

Il faut passer par du VBA. Le souhaites-tu ?

Bonjour le Forum

en réponse si pas d'autre solution, alors en VBA

Merci d'avance

Bon alors voici une solution :

Lorsque tu changes la cellule D8 de la feuil2, ça met à jour la feuil1.

merci de vos efforts sur ma demande

mais après plusieurs essai ce n'est pas réactif

exemple une colonne 1.10 je demande 4

c'est fonctionne mais si je reviens à cette même cellule avec une nouvelle demande 5 ça ne fonctionne plus.

Oui c'est normal, voici ce que tu m'as dit

gabinos a écrit :

la cellule E3 est une réponse d'un calcul sur cette Feuil2!; il faudrais que dans la feuil1!, il y est 3 cases remplis en rouge

Donc je pensais que la cellule E8 (pas E3) était issue d'un calcul et donc n'était pas saisie manuellement.

Donc quand tu dis

gabinos a écrit :

exemple une colonne 1.10 je demande 4

ça veut dire que tu modifies toi-même la cellule E8 ? Dans ce cas, change la procédure Worksheet_Change de la feuil2 par celle-ci :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim val1 As Long, val2&, taille&, col1&, lign1&
If Not Application.Intersect(Target, [e8]) Is Nothing Then
    val1 = [c8]
    val2 = [d8]
    If val1 < val2 And val2 <= val1 + 24 Then
        taille = IIf(IIf([e8] > 8, 8, [e8]) < 0, 0, IIf([e8] > 8, 8, [e8]))
        With Sheets("Feuil1")
            col1 = Application.WorksheetFunction.Match(val1, .[c5:bj5], 0)
            lign1 = Application.WorksheetFunction.Match(val2, .Cells(6, col1 + [c5].Column).Resize(24), 0) - 1
            With .[c6]
                If taille > 0 Then .Offset(lign1, col1 + 1).Resize(, taille).Interior.ColorIndex = 3 'rouge
                If taille < 8 Then .Offset(lign1, col1 + 1 + taille).Resize(, 8 - taille).Interior.ColorIndex = 15 'gris
            End With
        End With
    End If
End If
End Sub

réponse c'est ok

si je pratique avec l'exemple en manuel tout fonctionne avec cette nouvelle formule

Donc la première formule était bonne en cas de Cellule E8 automatique

un grand merci pour votre rapidité de réponse

votre pseudo est bien choisi....

Bonne journée le Forum

un oubli de dimension

SI je change les dimensions de mon tableau ainsi que le nombre de groupe de 8 colonnes

quel sont les critères à changer

exemple 1.2 a 1.50: 2.3 a 2.50 etc pour une groupe de 8 colonnes "ceci en longueur" mais aussi en largeur"

exemple 24 series de 8 colonnes

Essaie ce nouveau code :

Private Sub Worksheet_Change(ByVal Target As Range)
Dim val1 As Long, val2&, taille&, col1&, lign1&, nbcol&, tailleSerie&, longueur&
If Not Application.Intersect(Target, [e8]) Is Nothing Then
    val1 = [c8]
    val2 = [d8]
    tailleSerie = 8 'taille des groupes de cellules
    longueur = 50 'longueur de la série
    If val1 < val2 And val2 <= val1 + longueur - 1 Then
        taille = IIf(IIf([e8] > tailleSerie, tailleSerie, [e8]) < 0, 0, IIf([e8] > tailleSerie, tailleSerie, [e8]))
        With Sheets("Feuil1")
        nbcol = .Cells(5, Columns.Count).End(xlToLeft).Column - 3 + tailleSerie + 1 'le 3 correspond à la colonne de début du tableau (ici colonne C -> 3)
        Set plage = .[c5].Resize(, nbcol)
            col1 = Application.WorksheetFunction.Match(val1, plage, 0)
            lign1 = Application.WorksheetFunction.Match(val2, .Cells(6, col1 + 3).Resize(longueur - 1), 0) - 1 'le 3 correspond à la colonne de début du tableau (ici colonne C -> 3)
            With .[c6]
                If taille > 0 Then .Offset(lign1, col1 + 1).Resize(, taille).Interior.ColorIndex = 3 'rouge
                If taille < 8 Then .Offset(lign1, col1 + 1 + taille).Resize(, 8 - taille).Interior.ColorIndex = 15 'gris
            End With
        End With
    End If
End If
End Sub

Tu choisis toi-même la longueur de tes séries et c'est tout. Si tes vraies données débutent au même endroit (C5), ça devrait le faire.

Bonsoir; *

Je dois juste dire parfait;

rapidité de réponse; et VBA au top

après exploitation des données

MERCI

PS: un code des couleurs en VBA me conviendrais bien "exemple 3 rouge"

Cdt

Bonjour le Forum

je m'adresse à vba-new

pour une suite de ces formules en vba

ça fonctionne parfaitement pour un tableau

mais au cas ou je remet un autre tableau

4 lignes en dessous pratiquement a l'identique mais d'autre chiffres

avec la même recherche de la feuil2

merci vba-new si dispo ,et a ceux qui prendrons la main

ODE: TOUT SÉLECTIONNER

Private Sub Worksheet_Change(ByVal Target As Range)

Dim val1 As Long, val2&, taille&, col1&, lign1&

If Not Application.Intersect(Target, [e8]) Is Nothing Then

val1 = [c8]

val2 = [d8]

If val1 < val2 And val2 <= val1 + 24 Then

taille = IIf(IIf([e8] > 8, 8, [e8]) < 0, 0, IIf([e8] > 8, 8, [e8]))

With Sheets("Feuil1")

col1 = Application.WorksheetFunction.Match(val1, .[c5:bj5], 0)

lign1 = Application.WorksheetFunction.Match(val2, .Cells(6, col1 + [c5].Column).Resize(24), 0) - 1

With .[c6]

If taille > 0 Then .Offset(lign1, col1 + 1).Resize(, taille).Interior.ColorIndex = 3 'rouge

If taille < 8 Then .Offset(lign1, col1 + 1 + taille).Resize(, 8 - taille).Interior.ColorIndex = 15 'gris

End With

End With

End If

End If

End Sub

Re,

Tu peux me montrer comment se présenteraient tes 2 tableaux en mettant les chiffres qui changeraient ?

Tu voudrais qu'en changeant les valeurs de la feuille 2, ça remplisse l'un ou l'autre des 2 tableaux ?

merci vba-new de vous interreser a ma nouvelle demande

je profite de vos connaissances en vba

suite

oui en réponse a la 2ème phrase

ce tableau seras pratiquement identique

a la place de commencer par 1.2 du premier tableau

ça sera 26.27 en ligne 58 jusqu'a la ligne 82 qui sera 26.50 et toujours en 8 colonnes grise

et changer la couleur gris en gris fonçé

en faite si la demande de la feuil2 est supérieur a 25.50 , alors changement de tableau

merci d'avance

16couleur-cellule.zip (37.48 Ko)
Rechercher des sujets similaires à "mise couleur feuille"