Lo mejor es crear una clase... metes estas 2 variables
public X as long
public Y as long
Luego desde el módulo que lo usa... hacemos todo el trabajo
1º creas una coleccion
dim ColPos as new Collection
2º Crea una variable de entrada de datos...
3º Cuando se va moviendo, desde donde sea que tomes los datos, lo rellenas y lo guardas...
Dim pos as new clsPosiciones ' éste sería el nombre de la clase
pos.x= shape1.left
pos.y= shape1.top
call colpos.add(pos)
4º Cuando necesites ver el recorrido que ha seguido el shape, basta que recorras la colección.
dim p as clsPosiciones
for each p in colpos
msgbox cstr(p.x) & vbcrlf & cstr(p.y)
next
5º Cuando ya no necesites los datos, libera memoria vaciando la colección entera o los ítems requeridos:
do while colpos.count > 0
colPos.Remove(1)
loop