2003 XPです。

sub と function の違いって値を返す返さないの違いとググる先生は言ってましたが、そもそもfunctionの存在意義ってあるんですか?
call subで代用出来るような気がするのですが、理解が難解なのを我慢して使う価値のある代物なのですか?
どういう時に使うのが有効なのかが私の理解力が低すぎて全く見えてこないので、何か良き実例などありましたら教えてください。