Répéter code VBA sur toutes lignes

Unknown

XLDnaute Nouveau
Bonjour,

HELP ME !

Après des heures et des heures de recherche sur les sites spécialisé j'ai enfin réussi à créer le code que je souhaitais pour un fichier excel :

Private Sub Worksheet_Change(ByVal Target As Range)

Dim KeyCells As Range
Set KeyCells = Range("C2:R2")

If Not Application.Intersect(KeyCells, Range(Target.Address)) Is Nothing Then
Range("A2").Value = Date
End If

End Sub

Sauf que j'aimerai que celui ci fonctionne pour toutes lignes du tableaux, sachant que j'ai plus de 100 lignes et que le fichier va être amené à être allimenté par d'autres personnes, je ne vais pas pouvoir copier coller le code en modifiant les cellules à chaque fois
 

Marc L

XLDnaute Occasionnel
Bonjour,

merci de baliser le code conformément aux règles de ce forum !

Transformer un Range comme Target en adresse pour la retransformer en Range : c'est bébête !

VB:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Me.UsedRange.Columns("C:R"), Target) Is Nothing Then Cells(Target.Row, 1).Value = Date
End Sub
_______________________________________________________________________________
Merci de cliquer sur J'aime ce post en bas à gauche de chaque message ayant aidé …

_______________________________________________________________________________
Je suis Paris, Charlie, …
 
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : Répéter code VBA sur toutes lignes

Bonjour Unknow

Et bienvenue sur XLD

Pas utile de repeter

Teste:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
Set KeyCells = Range("C" & Target.Row & ":R" & Target.Row)
If Not Application.Intersect(KeyCells, Range(Target.Address)) Is Nothing Then
  Range("A" & Target.Row).Value = Date
End If
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
314 222
Messages
2 107 481
Membres
109 838
dernier inscrit
Mouh41