1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| Sub Worksheet_change(ByVal Target As Range)
'On déclare les variables ligneLong et ligneCourt
Dim ligneLong, ligneCourt
If Target.Column = 12 Then
'On récupère l'adresse de la ligne modifiée
ligneLong = Target.Address
'On coupe l'adresse pour ne garder que le numéro de la ligne
ligneCourt = Mid(ligneLong, 4)
'On copie les cellules dont on a besoin dans la ligne précédement sélecionnée
Range("A" & ligneCourt & ",D" & ligneCourt).Copy
'On ouvre le fichier dans lequel on veut coller les données copiées
Workbooks.Open ThisWorkbook.Path & "\Fichier1.xls"
'On sélectionne la première ligne libre (sans données)
With Sheets("Feuil1").UsedRange: NoDeLaDernLig = .Cells(.Rows.Count, .Columns.Count).Row: End With
Sheets("Feuil1").Cells(NoDeLaDernLig + 1, 1).Select
'On colle les données dans la page active
ActiveSheet.Paste
'On enregistre et on ferme la page active
ActiveWorkbook.Save
ActiveWorkbook.Close
End If
End Sub |
Partager