I don't know which tools you use, I'm on LSH3 and the GUI that comes with it (the three rings that you can pull down in periscope view and act as various measuring / calculation tools). I had exactly the same problems as you when I started out and I agree, range is the hardest of the data elements to obtain. The following things helped me become better:
- Track target for a good amount of time while overtaking it, keep taking bearings at regular intervals
- Obtain 0° AOB bearing for true heading of target (overtake, and move in front of target to obtain this)
- attack from 90° angle
- use bearings and 0° AOB to get a good speed estimate (say, the 0° AOB line is intersected by the bearings that you took every 30 min 6 times over a stretch of x km calculate the speed x/3 -> km/h, convert to knots
Also the range calculation becomes easier if you get a 0° AOB true heading of the target. Simply sit at a predefined distance from this line at a 90° angle and wait for your target to move in front of your tubes. I usually go between 1.5 km to 500 m
Good luck!