Yes, just allow the user to play the animation forward by sliding their finger. Call
advance() on the animation you can use a positive float for forward and a negative for backward.
Also what you did above is very complex for such a simple thing. You could have used:
MousePosition.x - ClickedPosition.x = offset.x
Then you would just check that the scrolling object doesn't go too far with 2 if checks.
If you have some free time, try to learn Linear Algebra. You will use it for almost everything in games. Also awesome things like slicing meshes is done with linear algebra.