I believe the easiest way to do this is by using a info_notnull (or info_null, really can’t remember) entity.
You need to connect the target_push to this info_…null entity (target_push -->–>--> info…). The player will then be pushed in the direction of the info_null entity.
Then, the distance between the info_null entity and the target_push determines the speed of the launch. Basically, the info_null entity is the apex (peak, heighest point) of your jump.
So if you want to launch them lightning fast you can put the info_null entity all the way outside of your map (in a caulk box of course).
If you just when them to go fast enough to reach a certain altitude, just put the info_null entity right at that altitude and it will be perfect. This is much harder to do using the speed key since you would have to test it out again and again and again until it was perfect…
That being said, I thought it was also possible using just the angle(s) and speed keys but I never used them so I’m not sure.
Also, if you ever want to launch players horizontally make sure the info_null entity is at least 1 grid unit above the target_push entity. They cannot both be on the same horizontal level (and it cannot be beneath the target_push either).