How to re-use the same timeline with different speed for multiple skel mesh components?

I have a bunch of different skeletal mesh components that all have a morph target called “pressed”…
I would like to animate these morph targets over time, which I assume the timeline is sort of the “one to go to” for animation over time.
My problem is that all of the components will actually do the exact same thing… with one exception, the speed of the animation should vary.

So my first idea was to simply create a function called pressed, pass in the skeletal mesh and then simply create a timeline that animates the morph target for the passed in mesh… in this way I could simply just re-use the function… however… functions are only called once and their for UE does not support Timelines in functions, another problem is that for altering the speed of the timelines play rate, I would have to refer to the timeline-components… which them I assume would be shared between all the morph targets… which in case I trigger multiple morph targets at the same time, the last morph target triggered would end up setting the play rate for all the others as well…

Any ideas of how to not repeat myself with code but still be able to set the “play rate”/speed of the animation individualy for each skeletal mesh comp/morph target?