As vezes fico confuso com o raciocínio para elaborar uma equação (uma fórmula). Tenho o costume de sempre pensar primeiro no resultado que pode gerar o erro e em seguida o resultado esperado. Outra forma de pensar no problema gerando o mesmo resultado final é a seguinte.
Function fnCalculaMediaPeso(pTotalKilos As Double, pQtdViagens As Integer) As Double
If pQtdViagens = 0 Then
fnCalculaMediaPeso = 0
Else
fnCalculaMediaPeso = pTotalKilos / pQtdViagens
End If
End Function
Existe alguma organização mental (coerência de ver o problema) que você faz e segue até o final??