LOL - Absolutely correct on all counts. It was nearly 1am and my littlun wasn't very well, so I kept having to rush upstairs. Just ended up frigging the code to try and make it work, but couldn't for the life of me work out why it kept starting a row down initially. :-(
Anyway, cheers Tony - Spot on, so have a star on me for the catch, and for pointing out that usedrange probably won't always be correct - Should have thought of that.
That aside, I didn't give correct instructions as I forgot the bit about choosing 'view code' from the tab, so here we go again:-
Right click the tab on sheet1 and from the options choose 'View Code' and then in the big white space that appears, paste this in (Change sheet references to suit). Now hit File / 'Close and return to Microsoft Excel'. Change sheet references to suit:-
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Set sht2 = Worksheets("Sheet2"
If sht2.Cells(1, 1).Value = "" Then
lrow = 0
Else
lrow = sht2.Cells(Rows.Count, 1).End(xlUp).Row
End If
If Not Application.Intersect(Target, Range("A1"

) Is Nothing Then
sht2.Cells(lrow + 1, 1).Value = Target(1).Value
End If
Application.EnableEvents = True
End Sub
Regards
Ken.................
----------------------------------------------------------------------------
![[peace] [peace] [peace]](/data/assets/smilies/peace.gif)
It's easier to beg forgiveness than ask permission
----------------------------------------------------------------------------