Básicamente o erro se dá por causa da rotina txtNomeEmpresa_Change
Ao clicar em novo registro e feita a limpeza dos valores para deixar um form em branco, essa limpeza no txtNomeEmpresa, "dispara" a sub txtNomeEmpresa_Change, que por sua vez chama a sub calcRetido que efetua calculos, mas como nomeEmpresa está em branco gera erro na procura consequentemente no calculo.
Experimente utilizar outro evento como por exemplo Exit, que não é afetado/disparado pela "limpeza"
Altere de:
Private Sub txtNomeEmpresa_Change()
If txtEndereco.Value <> "" And txtNomeContato.Value <> "" Then CalcRetido
End Sub
Para:
Private Sub txtNomeEmpresa_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If txtEndereco.Value <> "" And txtNomeContato.Value <> "" Then CalcRetido
End Sub
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 12/01/2017 6:27 am