End followed by an arrow is a normal key sequence in Excel that are designed
to function just like a Ctrl-Arrow and bring you, as you said, to the next
"data edge". It does not do this in the VBA Editor or anywhere else; it's an
Excel spreadsheet-ism.
So if you don't want it to behave that way, I guess your question is: "Is
there some way to disable this functionality?" Because Worksheet_Change or
not, End+Arrow works the way you describe. This is not a bug or anything
like that; it's by design. And again, it would happen that way whether you
have a Worksheet_Change event or not. It has nothing to do with your code.
Knowing that, how would you like to see it handled? Do you want to disable
it under all circumstances in your workbook? Or, knowing that it's by
design, is it OK now? What would you like to see?