How to link the start and pause of an animation to a specific height from a null object?
You need to provide a bit more detail, but if you want an expression to happen only when a slider is above a certain value you can use if(something &gt; somethingElse){do stuff here}. 

To time an animation so that it starts at that point is more tricky. Expressions can't store variables; they just evaluate each frame. So to find how far through the action the animation should be you'd have to calculate the first frame at which the property went above the threshold. You can do this with a loop:

var propertyToWatch = thisComp.layer("someLayer").someProperty;
var threshold = 12345;
if (propertyToWatch &gt; threshold){ // above the threshold, time to do stuff
    var t = 0;
    // now search for the time when the property went above the threshold
    while (t &lt;= thisComp.duration &amp;&amp; propertyToWatch.valueAtTime(t) &lt; threshold){
        t += thisComp.frameDuration; //add one frame
    }
    // t now equals the time when the property went above the threshold.
    // so the animation's relative age is time - t
    var animationAge = time - t;
    //do the animation stuff here, using animationAge as the time constant
}


This expression will get progressively slower to calculate as the sequence gets older, because the inner while loop has to be evaluated for each preceding frame. But usually only a problem if you have lots and lots of layers with this kind of expression, or your comp is half an hour long.