Tenho um sistema de contas a pagar, dentro desse sistema tenho uma tabela de Notas Fiscais, e outra de lançamento, que seria o resumo do movimento (tblNotasFiscais+tblFaturas+tblEntregas). Quando é registrado um lançamento, ele pede um número da nota fiscal, e se a nota fiscal não estiver registrada ele Abre uma box avisando e perguntando se o usuário deseja resgistrar ou não a nota, se sim, ele abre o formulário de notas fiscais, se não, ele desfaz a operação, ate aí tudo bem, aí está o código que eu e um pessoal de outro forum desenvolvemos: Isso vai em antes de atualizar: Private Sub Nota_fiscal_BeforeUpdate(Cancel As Integer) If IsNull(DLookup("[CodID]", "[tblNotaFiscal]", "NotaFiscal = '" & Forms!frmLancamento!NotaFiscal & "'"))Then resposta = MsgBox("Nota fiscal não cadastrada no sistema! deseja cadastra-la agora?", vbYesNo, "Nota Fiscal não cadastrada!") If resposta = 6 Then DoCmd.OpenForm "frmNotaFiscal" DoCmd.CancelEvent End If If resposta = 7 Then Me.Undo End If End If End Sub Mas, tem um porém, se existir duas notas com o mesmo número, com fornecedores diferentes, e uma delas não está cadastrada em "notas fiscais", ela pode ser registrada em lançamento sem nenhum problema. Já me disseram que eu poderia validar o numero da nota pelo numero do registro, mais para isso precisaria que o usuário decorasse ou anotasse o número de cada registro de nota fiscal, e isso dificultaria muito o serviço, também tentamos isso: Private Sub Nota_fiscal_BeforeUpdate(Cancel As Integer) If IsNull(DLookup("[CodID]", "[tblNotaFiscal]", "NotaFiscal = '" & Forms!frmLancamento!NotaFiscal & "'")) And IsNull(DLookup("[NFFornecedor]", "[tblNotaFiscal]", "LancFornecedor = '" & Forms!frmLancamento!NotaFiscal & "'")) Then resposta = MsgBox("Nota fiscal não cadastrada no sistema! deseja cadastra-la agora?", vbYesNo, "Nota Fiscal não cadastrada!") If resposta = 6 Then DoCmd.OpenForm "frmNotaFiscal" DoCmd.CancelEvent End If If resposta = 7 Then Me.Undo End If End If End Sub E também não deu certo. Ajudem por favor, Obrigado.