Disclaimer here, I haven't tried this before. But maybe something like:
Keyboard.IsPressed("up arrow") and Player.IsOverlapping(Ladder)
=> Player.Tween.MoveTo(Ladder.BBoxTop - Player.Height * 0.5)
Edit: just gave this a whirl and it seems to work, you cant jump off the ladder but maybe you could cancel the tween and reenable the platform behaviour if the left or right arrow key is pressed?