XL 2016 Code VBA jour/mois si changement valeur cellule

Yoyo01000

XLDnaute Occasionnel
Bonjour le forum,

Je rencontre un petit problème insolvable pour moi :

J'ai un code qui fait que la date du jour s'affiche dans la colonne B et que le mois s'affiche dans la colonne C dès qu'une valeur est inscrite (via un menu déroulant) dans la colonne D et tout cela sur la même ligne.

Ce code fonctionne très bien, cependant dès que j'ouvre mon classeur le lendemain, la date de la veille se transforme en date du jour :

date.PNG

Voici ledit code :

VB:
Private Sub Worksheet_Change(ByVal Target As Range)
     Dim MaPlage As Range
    
         Set MaPlage = Range("C3:C5000")
        
         If Target.Count > 1 Then Exit Sub
        
         If Not Application.Intersect(Target, MaPlage) Is Nothing And Target.Value <> "" Then
        
             Target.Offset(, -2) = Day(Now)
                
             Target.Offset(, -1) = Format(Now(), "mmmm")
            
         End If
        
     End Sub
J'ai d'autres procédures dans d'autres feuilles et en ce qui concerne la procédure dans ''ThisWorkbook'', voici ce qu'elle est :

VB:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    
         ThisWorkbook.Save
        
     End Sub
Que dois-je faire pour que cela ne se passe plus ?

Je vous remercie par avance de l'aide que vous allez pouvoir m'apporter
:)
 

Yoyo01000

XLDnaute Occasionnel
Bonjour Roblochon, je te joins le fichier (modifié pour cause de taille et vierge car celui d'origine comporte des données personnelles)
 

Fichiers joints

Roblochon

XLDnaute Accro
Re,

Avec le peu dont nous disposons, la seule chose que je vois est la contradiction avec ce que vous dites:
"...dès qu'une valeur est inscrite (via un menu déroulant) dans la colonne D et tout cela sur la même ligne "
et ce que fait votre macro qui n'intervient que sur changement de valeur de C3:C5000 : Set MaPlage = Range("C3:C5000")

En remplaçant C3:C5000 par D3:D5000 voyez si le problème persiste.

Au passage la ligne 2 n'est pas traitée et rien ne permet de comprendre ce manque.

Si non il n'y a rien dans votre fichier permettant pour moi d'identifier votre problème, tel que vous l'exposez.

Cordialement
 

Yoyo01000

XLDnaute Occasionnel
Arf... C'était d'une telle évidence, que par logique il faille la plage en colonne D plutôt que la C...

Tellement évident que je ne l'ai pas remarqué !!!

Je fais l'essai avec ("D3: D5000") et je reviens vers vous pour confirmer.

Merci :)
 

Yoyo01000

XLDnaute Occasionnel
Bonjour,
c'était bien cela ! J'avais copié le code, depuis un autre fichier, sans regarder que dans l'actuel il y a une colonne de plus...

Désolé pour le dérangement pour une solution qui était là sous mon nez !
 

Yoyo01000

XLDnaute Occasionnel
Encore merci pour ton aide :)

Je n'arrive pas à passer le sujet en "résolu" !

Bon WE et sans doute à bientôt, oui !
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas