Afficher Date colonne I

Bonjour le forum

Si je mets la ligne macro ci-dessous je ne peut pas faire afficher date colonne I

Si je supprime la ligne macro ci-dessous je ne peut plus taper du texte colonne I Ligne 2

Merci pour vos éventuels retours

Cordialement

 If Target.Column = 1 And Target.Row > 2 Then  

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim NombreJour As Integer
Dim LaDate As Date

  Application.ScreenUpdating = False
  If Target.Count > 1 Then Exit Sub
   If Target.Column = 1 And Target.Row > 1 Then       'Cette ligne de macro pour pouvoir taper ou coller du texte dans la ligne N°2
  Application.EnableEvents = False
  ' On recherche si la page est surveillée
  If Left(Sh.Name, 5) = "Année" Then   'Le chiffre 5 = Nombre de lettres du nom "Année" sans espace. On peut mettre 6, avec un espace après "Année " par sécurité.
    If (Target.Column = 5 Or Target.Column = 8) And Target.Row > 3 Then         ' Colonne E ou colonne H
      If Target = "" Then                 ' Si on efface la colonne E ou H
        Target.Offset(0, 1) = ""          ' On efface alors la colonne F ou I
      Else
        Target.Offset(0, 1) = Application.Proper(Format(Date, "dddd dd mmmm yyyy"))        ' Sinon on inscrit la date

  ' *************** Début Modifs. Tapez le nombre de M3 (colonnes E ou H )et éventuellement Modifier les Dates (colonnes F ou I)sous le format suivant => 10/04/19 (Exemple)
      End If
    ElseIf Target.Column = 6 Or Target.Column = 9 Then     ' Colonnes F et I. Colonne F => ElseIf Target.Column = 6 Then Colonne I => ElseIf Target.Column = 9 Then
      If IsDate(Target) Then
        Target = Application.Proper(Format(Target, "dddd dd mmmm yyyy"))        ' Sinon on inscrit la date
      Else
        Target = ""
  ' ************** Fin modifs

      End If
    End If
  End If
 End If
  Application.EnableEvents = True
End Sub

Bonjour,

If Target.Column = 1 > bloque tout le reste du code pour gérer les colonnes 5,6,8 et 9 ...

Si l'idée est de ne gérer les changements que sur les colonnes 5,6,8 et 9 > je suggère ...

If Not Intersect(Target, Range("E:F", "H:I")) Is Nothing Then
      If Target.Row > 1 Then

En ajoutant un End If vers la fin > car il y a une condition supplémentaire ...

Donnant ainsi ...

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim NombreJour As Integer
Dim LaDate As Date

   Application.ScreenUpdating = False
   If Target.Count > 1 Then Exit Sub
   '   If Target.Column > 1 And Target.Row > 1 Then       'Cette ligne de macro pour pouvoir taper ou coller du texte dans la ligne N°2
   If Not Intersect(Target, Range("E:F", "H:I")) Is Nothing Then
      If Target.Row > 1 Then

         Application.EnableEvents = False
         ' On recherche si la page est surveillée
         If Left(Sh.Name, 5) = "Année" Then      'Le chiffre 5 = Nombre de lettres du nom "Année" sans espace. On peut mettre 6, avec un espace après "Année " par sécurité.
            If (Target.Column = 5 Or Target.Column = 8) And Target.Row > 3 Then      ' Colonne E ou colonne H
               If Target = "" Then      ' Si on efface la colonne E ou H
                  Target.Offset(0, 1) = ""      ' On efface alors la colonne F ou I
               Else
                  Target.Offset(0, 1) = Application.Proper(Format(Date, "dddd dd mmmm yyyy"))      ' Sinon on inscrit la date

                  ' *************** Début Modifs. Tapez le nombre de M3 (colonnes E ou H )et éventuellement Modifier les Dates (colonnes F ou I)sous le format suivant => 10/04/19 (Exemple)
               End If
            ElseIf Target.Column = 6 Or Target.Column = 9 Then      ' Colonnes F et I. Colonne F => ElseIf Target.Column = 6 Then Colonne I => ElseIf Target.Column = 9 Then
               If IsDate(Target) Then
                  Target = Application.Proper(Format(Target, "dddd dd mmmm yyyy"))      ' Sinon on inscrit la date
               Else
                  Target = ""
                  ' ************** Fin modifs
               End If
            End If
         End If
      End If
   End If
   Application.EnableEvents = True
End Sub

ric

Bonjour ric

Tout simplement

If Target.Row > 2 Then 

Ta solution fonctionne aussi

Merci à toi et bonne semaine

Rechercher des sujets similaires à "afficher date colonne"