Coloration cellules sur 1 ligne si seuil haut dépassé

Bonjour à FFO, à La Communauté
Mon problème
Ligne 60 depuis cellules L60 à EV60
Ligne 70 depuis cellules L70 à EV70
Idem Lignes 80/90/100/110 etc.
Coloration en jaune des cellules à chaque maxi dépassé( on garde la coloration)
Ci joint fichier avec exemple mais coloration (en manuel)

2021 08 29 FFO Dde 4.xlsm (38,4 Ko)

Bonne journée
Merci
PB

Bonjour

J’ai mis en place une mise en forme conditionnelle sur les cellules qui doivent être colorées en jaune lorsque le maxi est dépassé (cellules L64 à EV64 et L74 à EV74) si le MAX en cellule B60 pour la première série et B70 pour la seconde dépasse l’une des cellules de la série

Tu peux faire un copier/coller sur les lignes qui doivent avoir cette mise en forme liée à cette condition
Seule contrainte le MAX doit être sur la même ligne de la série en colonne B

J’espère que cela répond à ton attente

Regardes et dis moi

2021 08 29 FFO Dde 5.xlsm (39,1 Ko)

Rebonjour FFO
Je me suis mal expliqué (Désolé)
Les cellules à colorer sont sur les lignes 60 et 70 (Origine en L)
Avec maxi en B64 et maxi en B74 (mon analyse dans le temps) début de surveillance
Exemple DC60 DD60 etc saisie journalière de la valeur
Exemple DC70 DD70 etc saisie journalière de la valeur
Mon vœu voir fichier :
Voir cellules de CK 60 à DB 60 = 6 cellules colorées sur l’ensemble
Voir cellules de CK 70 à DB 70 = 9 cellules colorées sur l’ensemble
J’espère avoir été plus clair
Je suis à ton écoute
Très cordialement
PB

Si j’ai bien compris on mets toutes les cellules de la ligne 60 colonne L à EV en jaune si le maxi de cette ligne dépasse le cours maxi c’est à dire si la valeur de la cellule B60 est supérieur à celle de la cellule B64

Idem ligne 70 avec la condition B70 > B74

Merci de me confirmer

Ci-joint ton fichier corrigé dans cet esprit

2021 08 29 FFO Dde 5.xlsm (38,9 Ko)

Rebonjour FFO
On mets les cellules de la ligne 60 colonne L à EV en jaune si le cours des cellules de cette ligne dépasse:

  1. Le cours maxi (121.8) c’est à dire si la valeur de la cellule B64
  2. Et dépasse le dernier maxi atteint en amont sur la ligne

Exemple en partant de CK60 origine pour l’exemple fichier
CK60 133.57 en jaune > à 121.8
CL60 133.12 pas coloré en jaune parce que > à 121.8 mais un inferieur à 133.57
CM60 133.75 en jaune > à 121.8 et supérieur à 133.57
Même raisonnement pour les cellules en aval

Point de départ du fichier L60 et L70

Idem ligne 70 avec la condition B74

Je te joins le fichier avec les cellules colorées pour ligne 60 et 70 origine Colonne CK
2021 08 29 FFO Dde 4.xlsm (38,4 Ko)

Je suis à ton écoute si mon explication est incompréhensible
Encore merci de ta patience
Cordialement
PB

Désolé mais je ne comprends pas la logique
Peux tu me donner pour chaque cellule la condition d une mise en couleur
par exemple pour la cellule E60 :
E60 > telle cellule (son adresse)
Pour la cellule B64 tu me mets E60>B64
Si 2 conditions tu me mets ainsi
E60>B64 et E60<F60
Ainsi dans chaque cellule de la ligne 60 pour celle-ci
Je construirai en correspondance les mises en formes conditionnelles

On avisera pour les autres lignes

Après avoir décortiqué tes explications avec l’appui de ton fichier j’ai fini par comprendre ton attente
Pas simple
Et notamment au delà des possibilité des mise en formes conditionnels car si la première condition est fixe la deuxième est purement flottante donc ingérable par ce dispositif

Je te propose donc une solution par traitement VBA qui se déclenchera à chaque modification d’une cellule de la série (L60 à EV60, L70 à EV70 puis série des autres lignes même colonne)

Il faudra au grés des lignes à rajouter pour les séries intervenir sur une ligne de code dans le VBA de la feuille ainsi :

cliques droit sur le nom de l’onglet

image

choisir « Visualiser le code »

Dans cette fenêtre qui s’ouvre :

mettre à jour la première ligne :

listeligne = « /60/70/ »

pour rajouter la ligne 80 il faut la modifier ainsi :

listeligne = « /60/70/80/ »

pour enlever la ligne 70 ainsi :

listeligne = « /60/80/ »

Etc…

enregistrer la modification bandeau excel sur l’icone disquette

fermer l’éditeur croix de la fenêtre en haut à droite

Puis faire des essais

le déclenchement se réalise à la modification d’une cellule de la ligne

Attention la valeur de référence maxi qui entre dans la comparaison doit être en colonne B 4 lignes au dessous de la ligne de la série

pour la série ligne 60 la référence maxi doit être en B60+4 soit B64
pour la série ligne 70 la référence maxi doit être en B70+4 soit B74

Idem pour les autres

Testes et dis moi

2021 08 29 FFO Dde 6.xlsm (41,9 Ko)

Rebonjour FFO
Tu as très bien compris ma demande
Désolé pour mon manque de clarté (le plus compliqué se faire comprendre)
Ton fichier 2021 08 29 FFO Dde 6 fonctionne très bien
Je pense comprendre ta procédure de mise en place
Il faut créer une nouvelle VBA
Par contre je dois intégrer cette VBA dans un autre fichier, une feuille qui intègre toutes tes modifs en fois 20
La je coince
Je m’arrête quand je ne sais plus
Peux tu m’aider ??
Je suis à ton écoute
Cordialement
PB

Parfait si j’ai réussi à combler ton attente c’est le principale

Pour utiliser cette fonctionnalité dans un autre classeur récupères dans le VBA de la feuille (comme indiqué dans ma précédente réponse pour modifier la liste des lignes concernées) toutes les lignes de code dans la souris (Sélection de toutes les lignes puis Copier ou Ctr+C) va dans l’autre fichier dans l’onglet concerné même opération pour obtenir son VBA et dans son éditeur cliques tout en haut puis coller ou Ctrl+V

Si des lignes de code sont déjà en place il serait bon de me les communiquer avant toute opération de collage de mes lignes de code

Si tu as des difficultés transmets moi ton autre fichier sans donnée confidentielle pour que j’intègre mon traitement en me spécifiant le nom de l’onglet concerné

Il va de soit que les même impératifs sont de mises exprimés dans ma réponse précédentes et notamment la mise à jour de la première ligne de code en fonction de la liste des lignes à traiter (listeligne = « /60/80/ » si fois 20 20 numéros à intégrer dans cette ligne de code sans oublier de les entourer des barres obliques)

Je te laisse oeuvrer pour l’instant et me dire

Bonjour FFO
Merci pour ta réponse
Je vais te transférer l’ensemble des lignes de codes de la feuille concernée en 2 fichiers
2021 09 10 Code Private Sub Worksheet en PDF impossible autrement
2021 09 11 Contenu Module en PDF impossible autrement

2021 09 10 Code Private Sub Worksheet.pdf (221,7 Ko)

2021 09 11 Contenu Module Module 1.pdf (229,6 Ko)

Avec ces infos
Peux tu me préparer un contenu global pour le code

  • Prenant en compte ta VBAProject (2021 08 29FFO Dde 6 (5)
    Je ne pense pas que le module change
    La procédure d’insertion de la modification (scenario 1) (l’ensemble des modifs fonctionnent)

Je n’ai pas insérée ta modif simplifiée fonctionnelle (peur de mal faire)
Peut être le moment de le faire (scenario 2)
Fichier Classeur 4 mail du 20 août question précédente

2021 08 20 Classeur 4 Modif non insérée|363x500

La priorité pour moi, le scenario 1 (je préfère)

Tu me dis si ma proposition te convient
Envoi de mon fichier initial trop compliqué…

Je suis à ton écoute

Excellente journée
Bon week-end
PB

Bonjour

J’ai beaucoup de mal à te suivre

Tu fais un sacré mélange entre plusieurs projets que nous avons mis sur pied
Je m’y perds complètement
Traitons projet par projet

Déjà et j’espère avoir compris ta demande le projet du post :

Mettre une date dans une cellule

Qui a fais l’objet d’une proposition « Classeur4.xlsm » version améliorée simplifiée que tu aurais pu me transmettre afin d’éviter que je fouine dans les archives des Post pour le retrouver
je t’en propose donc une nouvelle version qui inclus tes 20 lignes décrites dans ton fichier « 2021 09 10 Code Private Sub Worksheet.pdf »

Le voici :

Classeur5.xlsm (15,6 Ko)

Dis moi si il répond à ton attente

Puis on envisagera les autres projet l’un après l’autre SVP !!!

Merci

Rebonjour FFO
Désolé pour le tracas

Sur ta demande j’ai appliquée la version simplifiée sur une copie fichier
Quelques soucis dus à un décalage de colonne dans mon fichier par rapport au tien
J’ai adapté ton code
Ca marche (content … mais tu me pousses dans mes retranchements)

Donc maintenant reste à intégrer
Ta VBAProject (2021 08 29FFO Dde 6 )
Es tu d’accord avec moi (J’espère)

Dans l’attente de tes commentaires et directives sur la procédure de mise en place de ta VBA
Merci
Cordialement
PB

Rebonjour FFO
Ta VBA

2021 08 29 FFO Dde 6 (3).xlsm (41,4 Ko)

Merci pour ta réponse

Pour le 2° projet dont tu viens de me transmettre le fichier
Dans le VBA de la feuille tu as ces lignes de code :

Private Sub Worksheet_Change(ByVal Target As Range)
listeligne = « /60/70/ »
ligne = Target.Row
If listeligne Like « /" & ligne & "/ » Then
Range(« L » & ligne, « EV » & ligne).Interior.ColorIndex = xlNone
dercolonne = Cells(ligne, Columns.Count).End(xlToLeft).Column
coursmaxi = Range(« B » & ligne + 4).Value
dervaleur = 0
For i = 12 To dercolonne
If Cells(ligne, i) > coursmaxi And Cells(ligne, i) > dervaleur Then
Cells(ligne, i).Interior.ColorIndex = 6
dervaleur = Cells(ligne, i).Value
Else
Cells(ligne, i).Interior.ColorIndex = xlNone
End If
Next
End If
End Sub

la première doit être actualisée des lignes à traitées

Sur la base de ton fichier pdf (« 2021 09 10 Code Private Sub Worksheet.pdf ») il faut la mettre ainsi :

listeligne = « /70/60/80/90/100/110/120/130/140/150/160/170/180/190/201/212/222/232/242/252/ »

à l’identique du fichier du premier projet qui est comme ceci :

listeligne = « 70/60/80/90/100/110/120/130/140/150/160/170/180/190/201/212/222/232/242/252 »

avec en plus le caractère « / » en début et fin de liste rajouté car la procédure utilise une instruction différente

Je te laisse oeuvrer car si tu veux à l’avenir au gré des besoins faire évoluer la série il faut que tu saches le faire car je ne serais peut-être plus là pour cette opération
De plus c’est ultra simple à effectuer

Essaies et si souci fais m’en part

Petit rappel :

Attention la valeur de référence maxi qui entre dans la comparaison doit être en colonne B 4 lignes au dessous de la ligne de la série

pour la série ligne 60 la référence maxi doit être en B60+4 soit B64
pour la série ligne 70 la référence maxi doit être en B70+4 soit B74

Idem pour les autres

Recoucou FFO
Ton propos me tracasse

Je te laisse œuvrer car si tu veux à l’avenir au gré des besoins faire évoluer la série il faut que tu saches le faire car je ne serais peut-être plus là pour cette opération

J’espère que je ne t’embête pas ?
J’espère que tu n’as pas de problème ?

Ton aide et tes éclairages me font progresser
Ma connaissance sur excel et plus que basique (je marche sur des oeufs)

Suite à ton retour
J’ai préparé la modif et mon questionnement dans le fichier ci dessous

  • Comment et ou j’intègre cette VBA

2021 09 11 Code actuel dans onglet.pdf (128,0 Ko)

Avec tous mes remerciements
PB

Tu as la mémoire courte pourtant je t’ai fais une belle procédure à cette fin :

cliques droit sur le nom de l’onglet

image

choisir « Visualiser le code »

Dans cette fenêtre qui s’ouvre :

mettre à jour la première ligne :

listeligne = « /60/70/ »

pour rajouter la ligne 80 il faut la modifier ainsi :

listeligne = « /60/70/80/ »

pour enlever la ligne 70 ainsi :

listeligne = « /60/80/ »

Etc…

enregistrer la modification bandeau excel sur l’icone disquette

fermer l’éditeur croix de la fenêtre en haut à droite

Puis faire des essais

Il est toujours beaucoup mieux de compter que sur soit même pour une utilisation au quotidien d’un outil

Aujourd’hui tu souhaites que celui-ci fonctionne sur 20 lignes peut être demain sur 15 et après demain sur 40 etc…

J’ai aucun problème et suis ravi de t’aider mais pour adapter une procédure en fonction de l’exigence du moment il est nettement plus approprié de le réaliser soi sans l’aide d’un tiers
Aujourd’hui je suis là certes et en pleine forme mais demain qui peux savoir ce qu’il en sera ?
De plus dans quelques années j’espère toujours être de ce monde et de ce forum de surcroît mais j’en ai aucunement la certitude et donc si tu ne sais pas faire tu n’auras plus que les yeux pour pleurer !!!

Donc on retrousse ses manches et on met les mains dans le cambouis
Profites de ma présence pour apprendre

Je te rassure je reste là et ne t’abandonne pas mais je pense qu’il serait mieux que cette modif tu la fasses et ainsi demain de savoir en réaliser une autre voir les jours les mois les années à venir

Juste une petite ligne de code de :

listeligne = « /60/70/ »

à

listeligne = "/70/60/80/90/100/110/120/130/140/150/160/170/180/190/201/212/222/232/242/252/ "

Tu peux même faire un copier de cette dernière pour la coller en lieu et place de celle qui y a en première ligne de code du VBA de la feuille

Ne pas hésiter de se jeter à l’eau elle n’est pas si froide je te rassure

Et puis j’interviendrai si besoin

On se lance !!!

Bonjour FFO
On ne se comprend pas
J’ai fait la modif tel que proposé voir mon fichier joint dans ma réponse précédente
Joint à nouveau ci dessous
Tes explications sont très clairs. Merci , regarde j’ai appliqué

2021 09 11 Code actuel dans onglet.pdf (128,0 Ko)

Mon souci, notre incompréhension
Je dois intégrer cette nouvelle VBAProject (2021 08 29 FFO Dde 6) dans mon autre fichier qui comporte déjà ta premiere VBAProject (2021 09 11 Placement suivi journalier ) feuille 6 (Boursorama suivi 2 EC)
voir en haut première partie du document joint ci dessus

Cette nouvelle BVA je la positionne au dessus en dessous de la première, comment , ailleurs ?
Mon point bloquant

En espérant avoir clairement exposé mon problème
Désolé …
PB

Donc ces 2 procédures s’adressent au même onglet ?
Désolé je viens de le comprendre
Dommage que tu ne me l’ais pas clairement dit on aurait moins perdu de temps à converser sur une incompréhension

J’espère cette fois-ci ne pas faire fausse route j’appréhende déjà

Ci-après ton dernier fichier avec ces 2 traitements dans un seul VBA de feuille celui de l’onglet « FORUM CLASSEUR 3 29 08 21 »

Pour ne pas les perturber j’ai dissocié le nom de chaque liste de lignes
Pour l’un j’ai intégré « listeligne1 » pour l’autre « listeligne2 »

Chacun à faire vivre en fonction des lignes à traiter pour le traitement qui les concernent

Testes et dis moi

2021 08 29 FFO Dde 7.xlsm (43,1 Ko)

FFO Merci
Vraiment désolé de mon manque de clarté
Je teste ce soir et te dis au plus vite
Très cordialement
PB

Coucou Bonjour FFO
J’ai inséré la modification tout est OK

Pour ton information chaque modif en provenance de nos discussions, complétée par notre fichier partiel d’échange
le dernier en date 2021 08 29 FFO Dde 7, modif transférée et adaptée dans mon fichier complet de gestion.

Je suis très, très content de l’aide que tu m’as m’apportée
Je ne suis pas en capacité de régler les problèmes que tu m’as solutionnés
Vraiment désolé pour les incompréhensions

Avec tous mes remerciements
Très cordialement
PB

J’ai d’autres idées d’évolution …
Garde le dernier fichier ça peut te servir …