Você pode obter a última linha com elegância,
INDEX(Table1,ROWS(Table1),)
Sugiro fazer isso com um intervalo nomeado e usá-lo como sua meta Worksheet_SelectionChange
para sua macro. O intervalo nomeado pode ser acessado assim:
Workbooks("WorkbookName.xlsx").Names("RangeName")