DATES

Résolu
Bonjour à tous voici mon problème , sur Excel en A2 j'ai une date entrée et en B2 une date sortie, si c'est possible j'aimerai que lorsque je rentre un date en b2 , celle qui ce trouve en a2 soit supprimer automatiquement .
MERCI DE VOTRE AIDE

8 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour,

    Pour faire la même chose en sens inverse :
    quand tu écrit une date en A ça efface celle en B
    Private Sub Worksheet_Change(ByVal Target As Range)
      If Intersect(Target, [A2:A999]) Is Nothing Then Exit Sub
      If IsDate(Target.Value) Then Target.Offset(0, 1).ClearContents
    End Sub

    Pour combiner les deux :
    quand tu écrit une date en A ça efface celle en B et inversement :
    Private Sub Worksheet_Change(ByVal Target As Range)
      Application.EnableEvents = False
      If Not Intersect(Target, [B2:B999]) Is Nothing Then
        If IsDate(Target.Value) Then Target.Offset(0, -1).ClearContents
      ElseIf Not Intersect(Target, [A2:A999]) Is Nothing Then
        If IsDate(Target.Value) Then Target.Offset(0, 1).ClearContents
      End If
      Application.EnableEvents = True
    End Sub


    Cordialement
    Patrice
    1. j'ai la colonne B qui se nomme Sortie et la colonne A Entré? Vous m'avez donné la solution pour supprimer automatiquement la date entrée en colonne A lorsque je mets une date sortie en B , je voudrais faire la même choses en sens inverse, donc lorsque je rentre une date en A2 la date en B2 disparaisse.
      1. je voulais encore te remercier car ça fonctionne très bien, je commence juste a connaître Excel est je suis faciné.
        Pourrais tu m'aider, je voudrais faire la même chose pour la cellule A2:A999
        je ne métrise pas l'anglais.
        1. Bonjour,

          C'est pas très clair :
          1) « si c'est possible j'aimerai que lorsque je rentre un date en b2 , celle qui ce trouve en a2 soit supprimer automatiquement » : ça c'est Ok
          2) « je voudrais faire la même chose pour la cellule A2:A999 » : où se trouverait le cellule à effacer ???
      2. Bonjour,

        Pour la plage B2:B999 (à adapter) :
        Private Sub Worksheet_Change(ByVal Target As Range)
          If Intersect(Target, [B2:B999]) Is Nothing Then Exit Sub
          If IsDate(Target.Value) Then Target.Offset(0, -1).ClearContents
        End Sub
        

        1. Merci Patrice
      3. J'aimerai étendre cette formule au cellules dessous b3, b4 ect
        1. Merci beaucoup mon problème est résolu
          MERCI A PATRICE ET A CCM
          1. Bonjour,

            Dans le module de la feuille :
            Private Sub Worksheet_Change(ByVal Target As Range)
              If Intersect(Target, [B2]) Is Nothing Then Exit Sub
              If IsDate([B2].Value) Then [A2].ClearContents
            End Sub