Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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 :



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
 

Hasco

XLDnaute Barbatruc
Repose en paix
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 !
 

Discussions similaires

Réponses
7
Affichages
187
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…