buenas!
pues no estoy del todo segura pero creo (por lo q he deducido en este corto tiempo q llevo programando en .NET) q
Sub se emplea en aquellos métodos que no devuelven nada (como las funciones void en c y java) y function se emplea cuando se desea devolver algo.
Espero haber ayudado, saludos