Macro pour eviter mise en forme conditionnelle dans un cale

macro pour eviter mise en forme conditionnelle dans un calendrier

bonjour

voici mon probleme

j ai 2 feuil excel (calendrier et feuil1),je voudrai que lorsque je rentre une date dans la feuil1 ,celle correspondante dans la feuille calendrier se colorie (sur la ligne feuil1)

peut on eviter la mise en forme conditionnelle?

voici mon fichier

merci de votre aide

15calendrier.xlsm (39.54 Ko)

Salut et bienvenue sur le Forum,

Je te propose une solution par macro.

Dans le fichier ci-joint, si tu ajoutes des dates à la suite des autres dans les feuilles des collaborateurs, lorsque tu retournes sur la feuille CALENDRIER, cette dernière est actualisée.

Si tu veux ajouter une feuille d’un collaborateur, tu dois juste prendre exactement le même modèle que pour les premiers et ajouter son nom chaque mois dans le calendrier.

Afin de simplifier ma macro, j’ai supprimé les cellules fusionnées de tes feuilles de collaborateur ; cellules fusionnées qui n’apportent en général rien d’autre que des ennuis (à éviter au maximum).

Je n’ai rien prévu pour l’instant au cas où tu supprimes une date dans la feuille d’un collaborateur ; ça ne serait pas actualisé sur la feuille Calendrier. Mais si cette première étape te convient, on peut voir pour ça par la suite.

Est-ce un point de départ ?

19silverjet.xlsm (53.23 Ko)

merci je vais essayer et je tiens au courant

bonjour et merci Yvouille de votre aide

voila j ai tester et cela ne correspond pas tout a fait a mes besoins mais heureusement j'ai trouver quelque qui correspond un peu plus sauf que sa ne s actualise pas ! (si j'enlève une date dans feuill1 ,la feuille calendrier ne change pas)

pourrai t on m'aider SVP ?

voici le code

Private Sub Worksheet_Change(ByVal Target As Range)

Dim MyVarLigne As Byte

Dim MyVarColonne As Byte

If Not Intersect([G7:M24], Target) Is Nothing And Target.Count = 1 Then

If IsDate(Target) = False Then Exit Sub

On Error Resume Next

MyVarLigne = 0

MyVarLigne = Application.WorksheetFunction _

.Match(CLng(CDate("01/" & Month(Target) & "/" & Year(Target))), Worksheets("CALENDRIER").Range("A1:A256"), 0) + 3

If MyVarLigne = 0 Then

MsgBox " la date n'existe pas sur la feuille calendrier"

Exit Sub

End If

On Error GoTo 0

Err = 0

MyVarColonne = 0

MyVarColonne = Application.WorksheetFunction _

.Match(CLng(CDate(Target)), Worksheets("CALENDRIER").Range("A" & MyVarLigne & ":AL" & MyVarLigne), 0)

If MyVarColonne = 0 Then

MsgBox " la date n'existe pas sur la feuille calendrier"

Exit Sub

End If

If Target.Column = 7 Then

Target.Interior.Color = 255

Worksheets("CALENDRIER").Cells(MyVarLigne + 1, MyVarColonne).Interior.Color = 255

ElseIf Target.Column = 3 Then

Target.Interior.Color = 65535

Worksheets("CALENDRIER").Cells(MyVarLigne + 1, MyVarColonne).Interior.Color = 65535

ElseIf Target.Column = 5 Then

Target.Interior.Color = 0

Worksheets("CALENDRIER").Cells(MyVarLigne + 1, MyVarColonne).Interior.Color = 0

End If

End If

merci

Salut,

Désolé si mon code ne correspond en rien à ton attente.

Mais bon, je suis quand même un peu étonné

Cordialement.

Bonjour Yvouille, le forum

Yvouille le fichier que tu m a proposé correspond a mes attente ! j ai fait n'importe quoi en voulant modifier certaine chose! du coup je penser qu' il ne convené pas, DESOLER

veux tu approfondir le développement de celui-ci?(en actualisant la feuille calendrier quand une date est supprimée dans la feuille collaborateur )

merci et encore désoler

Salut,

Voici un nouvel essai avec le complément demandé.

Bonnes salutations.

9silverjet-v1.xlsm (58.71 Ko)

bonjour Yvouille , le forum

tout d abord merci de votre aide

j ai tester et j ai un petit souci car sur mon fichier final, les colonnes dans les feuilles collaborateurs ne sont pas a la même place que dans le fichier joint ....

que dois-je changer dans ton code pour qu'il prenne en compte ?

sachant qu'elles ce situe de "D45 a D73" ," G45 a G73" ; "N45 a N73 ".......( 5 colonnes)

encore merci

Salut,

Ca ne m'intéresse pas trop de jouer à cache-cache Je ne comprends pas que tu me fasses travailler sur un fichier qui ne correspond pas au tien. Peux-tu joindre ton fichier sur ce fil ou au minimum me le fournir en privé ?

Bonnes salutations.

salut

désolé je te comprend

j été en cour de "recherche " de mise en page pour rendre le fichier plus simple a utiliser et donc j ai tout "chambouler" dans la disposition!

voici le fichier normalement en mise en page final

MERCI

17silverjet-v1.xlsm (75.42 Ko)

Tu as un peu joué à l'apprenti-sorcier avec le dernier fichier que tu as joint : j'ai fait un moment pour remarquer que tu avais modifié quelque chose que tu n'aurais pas dû

Je pense que le fichier ci-joint devrait répondre à ton attente.

Amicalement.

11silverjet-v2.xlsm (123.50 Ko)

bonjour Yvouille

c est sympa de m'avoir aidé !

ce fichier me convient et je t en remercie

Mais pour le finaliser , je penser varier les couleurs (dans la feuille calendrier) suivant les couleurs des colonnes (feuille collaborateurs)

est-ce possible ? ou il faut reprendre le code macro?

MERCI

re Yvouille

je viens de m apercevoir qu' il y a un " bug"

je pense que cela viendrai du moi de décembre?? car quand je met le 01/12/14 dans la feuille collaborateur , sa le prend en compte MAIS lorsque je l efface c'est le 30 décembre qui ce colorie ?!

MERCI du temps que tu m'accordes !

Re-bonjour,

Ne t’excuse pas d’avoir foutu un peu le bronx dans ma macro. Ca me fait du boulot complémentaire, mais tant pis

En fait il y a un problème si toutes dates sont effacées pour un collaborateur, la macro interprète alors ce vide comme 30 décembre. Dans la macro ci-joint, ce problème a été corrigé.

Sans vouloir te vexer, tu as montré à plusieurs reprises que tu n’avais pas les capacités à modifier mes codes. Je ne vais donc pas tenter de t’indiquer ce qu’il faudrait modifier afin de répondre à ta demande concernant les couleurs ; je dois d’ailleurs moi-même chercher un peu la solution. Mais je ne vais pas non plus accepter jusqu’à la fin des temps que tu me demandes chaque jour quelque chose de plus. Je te prierais aussi de bien réfléchir à ce que tu désires finalement, car c’est la dernière fois que j’accepte de modifier mes codes. Indique-moi au minimum quelles couleurs tu désires pour quelles données. D’après ce que j’ai compris, tu voudrais par exemple une couleur (laquelle ?) pour les données de la colonne D des feuilles des collaborateurs, une autre couleur (laquelle ?) pour les dates de la colonne G de la feuille des collaborateurs, etc. Est-ce bien cela ?

A te relire.

11silverjet-v3.xlsm (121.80 Ko)

bonjour Yvouille

et surtout merci de l'importance que tu apportes a mes demandes ,

comme tu me l a remarqué mes demandes sont excessives et j en suis désolé je ne penser pas qu'elles allaient être prise comme tels

bien évidement je suis novice et donc avec l euphorie des choses je ne suis pas aperçu de la gène DESOLER

pour répondre a l info , en effet je voudrais si possible,

que dans la feuille "calendrier" les cases soient colorées

d'une couleur rouge pour les dates correspondantes a la colonne D des feuilles des collaborateurs,

d'une couleur jaune pour les dates correspondantes a la colonne G de la feuille des collaborateurs,

d'une couleur bleu pour les dates correspondantes a la colonne N des feuilles des collaborateurs,

d'une couleur verte pour les dates correspondantes a la colonne U de la feuille des collaborateurs,

d'une couleur noire pour les dates correspondantes a la colonne AB de la feuille des collaborateurs

encore MERCI

Et voila

15silverjet-v4.xlsm (123.61 Ko)

un grand MERCI Yvouille

Rechercher des sujets similaires à "macro eviter mise forme conditionnelle cale"