Getthefunk
XLDnaute Nouveau
Bonjour à toutes et à tous,
Voici mon problème : j'ai trouvé il y a quelques semaines une macro permettant de mettre à jour automatiquement une date à la date du jour dans une cellule dès lors qu'une modification était faite sur la ligne de cette cellule.
Toutefois, je me suis rendue compte que cela ne fonctionnait que ligne par ligne, et que la date ne se mettait à jour que pour la première ligne lors de modification en masse. Par exemple lorsqu'on fait un copié/collé sur plusieurs lignes, il n'y a que la date de la première ligne (celle selectionnée pour le collé) qui se met à jour.
Cela me pose 2 problèmes
1/ J'aimerais que toutes les cellules des lignes modifiées soit mises à jour. La macro a fait buguer un fichier important dans lequel on change régulièrement plusieurs cellules par colonnes, à travers du copié/collé ou bien lorsqu'on tire. (dans le fichier joint, j'ai tiré les références à partir de A0003 et il n'y a que la date pour A0004 qui s'est mise à jour, idem si on copie colle les couleurs à partir de la ref A0007)
2/ Je voudrais aussi que la date ne se mette à jour que lorsqu'on modifie les informations de certaines colonnes. Par exemple, dans le fichier joint, j'aimerais que la date modification (colonne B) ne se mette à jour que lorqu'on modifie les cellules de la colonne C (Nom Couleur) et de la colonne E (date lancement).
Voici la macro en question, avec 2 la ligne à partir de laquelle la mise à jour se fait, et B la colonne dans laquelle la mise à jour est inscrite :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row > 2 Then Cells(Target.Row, "B") = Date
End Sub
Je voudrais spécifier quelque part que cela doit être fait pour chaque ligne dans la selection (enfin je crois que c'est ce qui résoudrait mon 1er problème), mais je suis extrêmement novice en VBA et ne sais pas l'écrire... Et je n'ai pas vraiment d'idée pour mon deuxième problème, je ne sais pas écrire des conditions comme "si l'info dans telle et telle colonne change, alors la date modif change, sinon rien"
Merci beaucoup pour votre aide,
Getthefunk
Voici mon problème : j'ai trouvé il y a quelques semaines une macro permettant de mettre à jour automatiquement une date à la date du jour dans une cellule dès lors qu'une modification était faite sur la ligne de cette cellule.
Toutefois, je me suis rendue compte que cela ne fonctionnait que ligne par ligne, et que la date ne se mettait à jour que pour la première ligne lors de modification en masse. Par exemple lorsqu'on fait un copié/collé sur plusieurs lignes, il n'y a que la date de la première ligne (celle selectionnée pour le collé) qui se met à jour.
Cela me pose 2 problèmes
1/ J'aimerais que toutes les cellules des lignes modifiées soit mises à jour. La macro a fait buguer un fichier important dans lequel on change régulièrement plusieurs cellules par colonnes, à travers du copié/collé ou bien lorsqu'on tire. (dans le fichier joint, j'ai tiré les références à partir de A0003 et il n'y a que la date pour A0004 qui s'est mise à jour, idem si on copie colle les couleurs à partir de la ref A0007)
2/ Je voudrais aussi que la date ne se mette à jour que lorsqu'on modifie les informations de certaines colonnes. Par exemple, dans le fichier joint, j'aimerais que la date modification (colonne B) ne se mette à jour que lorqu'on modifie les cellules de la colonne C (Nom Couleur) et de la colonne E (date lancement).
Voici la macro en question, avec 2 la ligne à partir de laquelle la mise à jour se fait, et B la colonne dans laquelle la mise à jour est inscrite :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row > 2 Then Cells(Target.Row, "B") = Date
End Sub
Je voudrais spécifier quelque part que cela doit être fait pour chaque ligne dans la selection (enfin je crois que c'est ce qui résoudrait mon 1er problème), mais je suis extrêmement novice en VBA et ne sais pas l'écrire... Et je n'ai pas vraiment d'idée pour mon deuxième problème, je ne sais pas écrire des conditions comme "si l'info dans telle et telle colonne change, alors la date modif change, sinon rien"
Merci beaucoup pour votre aide,
Getthefunk