What’s controlling the timing of the moves, comp markers? If so, you expression needs to figure out which two markers the current time is between and use that to determine how far along it should be in the ease between the positions corresponding to those two markers. Something like this probably:
m = thisComp.marker;
if (m.numKeys > 0){
n = m.nearestKey(time).index;
if (time < m.key(n).time) n--;
if (n == 0){
val = thisComp.layer("Name " + 1).transform.position;
}else if (n == m.numKeys){
val = thisComp.layer("Name " + m.numKeys).transform.position;
}else{
inPos = thisComp.layer("Name " + n).transform.position;
outPos = thisComp.layer("Name " + (n+1)).transform.position;
val = ease(time, m.key(n).time, m.key(n+1).time, inPos, outPos);
}
[val[0],val[1],value[2]];
}else
value
Dan