Have a look on these snippet from APIGuide.qvw (is in your qv install-folder):
rem ** minimize all active sheet objects on active sheet **
for i=lbound(objs) to ubound(objs)
if objs(i).IsActive then objs(i).Minimize
Instead of minimize you could read the name, id, timestamp, user .... But I wouldn't create a variable for each object I would rather use one variable as logfile and append each new event as a new row. These variable could you write by closing the app or externally in a text-file. Then to scan each movement within the app is quite heavy but to write it immediately is more difficult - from performance point of view and if several users used the same app at the same time ...
All these things could you easily find within the APIGuide.qvw in the sheets "A... Members" and "A... Examples".
set temp = ActiveDocument.GetApplication.GetProperties
rem ** get unique object ID for first object on sheet Main **
set s = ActiveDocument.Sheets("Main")
set so = s.SheetObjects(0)
id = so.GetObjectId
msgbox("ID = " & id)