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

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

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
 
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
 
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 🙂
 
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 !
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
250
Réponses
3
Affichages
223
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
79
Réponses
4
Affichages
147
Réponses
14
Affichages
371
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…