Modifier une date dans une cellule si un paramètre d'une ligne à changé

SEP54

XLDnaute Junior
Bonjour à tous,

Tous d'abord meilleurs vœux pour cette nouvelle année. :cool:

Je cherche à modifier la date inscrite dans une cellule d'une ligne afin filtrer par la suite et avoir toujours les dates dans l'ordre chronologique des événements.

La date doit se mettre à la date du jour si un paramètre est changé dans la même ligne mais attention uniquement de la colonne B à J (voir fichier ci-joint) :confused:

Merci d'avance à la personne qui me trouvera l'astuce ;)

SEP54;)
 

Pièces jointes

  • ligne-modifiée-jusquà-J.xlsx
    16.3 KB · Affichages: 39

Paf

XLDnaute Barbatruc
Re : Modifier une date dans une cellule si un paramètre d'une ligne à changé

Bonjour

une solution VBA, à coller dans le code de la feuille 1:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  Dim DerLig As Integer
  DerLig = Cells(Rows.Count, 1).End(xlUp).Row
  If Not Intersect(Target, Range("B86:I" & DerLig)) Is Nothing Then
    Cells(Target.Row, 1) = Now()
  End If
End Sub

Ne fonctionnera que si les cellules de la plage sont modifiées manuellement.

Bonne suite
 

kingfadhel

XLDnaute Impliqué
Re : Modifier une date dans une cellule si un paramètre d'une ligne à changé

Bonjour,

Code:
Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Range("B86:J1500"), Target) Is Nothing Then ' tu peux agrandir la plage 
num = Target.Row
Cells(num, 1) = Date
End If
End Sub
 

Pièces jointes

  • ligne-modifiée-jusquà-J.xlsm
    25 KB · Affichages: 30

SEP54

XLDnaute Junior
Re : Modifier une date dans une cellule si un paramètre d'une ligne à changé

Bonsoir,

J'ai injecté aujourd'hui la macro dans mon fichier et je ne sais pas corriger l'erreur générée.

ci-joint une copie d'écran

Merci d'avance pour votre aide

SEP54
 

Pièces jointes

  • debug-sep54-changement valeur.jpg
    debug-sep54-changement valeur.jpg
    58.9 KB · Affichages: 31

Paf

XLDnaute Barbatruc
Re : Modifier une date dans une cellule si un paramètre d'une ligne à changé

bonjour,
deux solutions:
1) comme l'indique la fenêtre d'erreur : la variable n'est pas définie. Il faut donc la déclarer : Dim num as Integer( en tête de macro)
2) plutôt que de passer par une variable intermédiaire utiliser directement : Cells(Target.Row, 1) = Date

Bonne suite
 

Discussions similaires

Statistiques des forums

Discussions
312 464
Messages
2 088 628
Membres
103 894
dernier inscrit
tanyroc