Eu uso esta rotina
'Essa rotina varre o formulário e apaga o conteúdo dos campos texto
'Campo_nao_limap é normalmente a chave para não ser apagada ou seja o que voce digitou. Tipo o cod_cliente
Public Sub LIMPA_CAMPOS_FORMULARIO(NomeForm As Form, Optional campo_nao_limpa As String)
Dim Controle As Control
For Each Controle In NomeForm.Controls
If Controle.Name <> campo_nao_limpa Then
If TypeOf Controle Is TextBox Then Controle.Text = ""
If TypeOf Controle Is ComboBox Then
Controle.ListIndex = 0
End If
End If
Next Controle
End Sub
Eu coloquei a possibilidade de não limpar um campo, tipo o campo do codigo do cliente. Digitei o cod 6, não existe o cliente com o codigo 6 entao ele nao apagaq este campo e limpa todos os outros. Se preferir não passe nada neste campo para ter tudo limpa.