Microsoft 365 Remplir une cellule avec la date du jour uniquement si celle-ci est vide et si la première cellule de la ligne contient quelque chose

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 !

Kingrise

XLDnaute Nouveau
Bonjour,

J'ai essayé avec le code VBA ci-après mais je n'arrive pas à obtenir le résultat que je recherche... En effet ce code affiche bien la date dans la cellule mais uniquement si je supprime premièrement le contenu de la cellule (même si elle est vide). De plus, une fois la date du jour entrée, je dois supprimer au minimum deux cellules pour en effacer le contenu...

VB:
Private Sub Worksheet_Change(ByVal Target As Range)
DerniereLigne = Range("B2").End(xlDown).Row
If Not Intersect(Range("G2:G" & DerniereLigne), Target) Is Nothing And Target.Count = 1 Then
  If Target.Value = "" Then Target.Value = Now
End If
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub

Bref, ne connaissant pas assez VBA, pourrait-on me mettre sur la piste...

Ex :

En "B2", si une donnée existe, placer la date du jour en "G2", uniquement si "G2" est vide.

Toute aide sera la bienvenue 🙂

Merci d'avance.
 
Bonjour,

Ceci devrait le faire :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim DerLig As Long
DerLig = Range("B" & Cells.Rows.Count).End(xlUp).Row
If Not Intersect(Range("B1:B" & DerLig), Target) Is Nothing And Not IsEmpty(Target) Then
    If IsEmpty(Range("G" & Target.Row)) Then
        Application.EnableEvents = False
        Range("G" & Target.Row) = Date
        Application.EnableEvents = True
    End If
End If
End Sub

Cette macro se déclenche à la saisie dans la colonne B et écrit la date en cellule G, sur la même ligne.
 
Je vais répondre à ta question par une question.....
Si dans ta cellule B, tu as une formule, même si la valeur affichée change (en fonction du calcul de ta formule), la macro évènementielle ne se lancera pas (changement passif), donc :
Quel est l'évènement qui doit déclencher la macro ? A quel endroit entres-tu une valeur qui influe sur la formule ?
Bon, OK, ça fait deux questions !!!
 
Oui, je comprends bien ta (tes) questions... Et en effet, je n'ai eu qu'à modifier les valeurs "B1:B" en "C1:C" (Ce sont ces valeurs qui modifient la formule en "B2:B". Cela fonctionne parfaitement selon les attentes... J'attendais ta réponse pour voir si tu avais un autre lapin à sortir de ton chapeau de magicien. 🙂

Un Grand merci pour la solution !
 
- 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

Réponses
3
Affichages
218
Réponses
4
Affichages
138
Réponses
14
Affichages
350
Réponses
16
Affichages
964
Retour