Modification Code VBA Date figée

captainejack

XLDnaute Occasionnel
Bonjour à tous
J'ai ce code VBA, qui fonctionne
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 7 Then
If IsNumeric(Target) Then
Cells(Target.Row, "D") = Date
Else
Cells(Target.Row, "D").ClearContents
End If
End If
End Sub
qui me fige une date D en inscrivant une valeur en G (voir le fichier joint)
Quel serait la modification de ce code, en supprimant la valeur en G, la date s'efface.
En vous remerciant
Slts
 

Pièces jointes

  • essai 2.xlsm
    15.6 KB · Affichages: 46
  • essai 2.xlsm
    15.6 KB · Affichages: 45
  • essai 2.xlsm
    15.6 KB · Affichages: 50

eriiic

XLDnaute Barbatruc
Re : Modification Code VBA Date figée

Bonjour,

une cellule vide est considérée comme numérique (= 0)
Inverse ton test et complète le 1er :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 If Target.Column = 7 Then
     If Not IsNumeric(Target) or target="" Then
             Cells(Target.Row, "D").ClearContents
         Else
             Cells(Target.Row, "D") = Date
         End If
     End If
 End Sub

eric
 

captainejack

XLDnaute Occasionnel
Re : Modification Code VBA Date figée

Bjr Eric
Merci pour ton aide
Si je comprends bien le code
If Not IsNumeric(Target) or target="" Then
Si la valeur en colonne 7 est non numérique
Et quel serait l'expression si en colonne 7 j'avais du texte.
Suis pas tré bon en anglais
Merci
 

eriiic

XLDnaute Barbatruc
Re : Modification Code VBA Date figée

Re,

If Not IsNumeric(Target) or target="" Then
Si la valeur en colonne 7 est non numérique
ou est vide

Et quel serait l'expression si en colonne 7 j'avais du texte.
Celle que je t'ai donnée, je ne m'amuse pas à compliquer pour le plaisir;-).
IsText n'existe pas.

eric
 

Statistiques des forums

Discussions
312 922
Messages
2 093 644
Membres
105 775
dernier inscrit
assen