Phillip_Junior 11/7/2017, 20:36
Olá
Vejamos se eu entendi:
Você criou um formulário de cadastro de usuários, e vc quer que alguns dados como território, empresa... que é inserido na tabela de usuário fossem também adicionados na
na tabela de fornecedores.
Mas caso esses dados já existam na tabela de usuário ele não adiciona nem na tabela de usuários nem na tabela de fornecedores.
Presumindo que seja isso:
Criamos uma condição:
Insira esse código adaptando ele conforme a sua necessidade no evento onde já está o código para adicionar o registro. Você deve substituir pelo anterior.
Private Sub BtnSalvar_Click()
Dim nometerritorio As String
Dim nomeempresa As String
'Altere o nome dos campos conforme estão no seu formulário.
nometerritorio = (Nz(Me.nomedocampoterritorionoformulario.Value, ""))
nomeempresa = (Nz(Me.nomedocampoempresanoformulario.Value, ""))
If existeusuario(nometerritorio, nomeempresa) Then
MsgBox "Já existe os dados cadastrados" & vbCrLf & vbCrLf & "Os dados não serão registrados na tabela usuário nem tabela fornecedores.", vbCritical + vbOKOnly, "ATENÇÃO"
MsgBox "Vc pode se assim for conveniente pedir que seja buscado nessa tabela os dados registrados e vc apresente eles nos campos do próprio formulário e altere os dados", _
vbCritical + vbOKOnly, "ATENÇÃO"
Else
CurrentDb.Execute "INSERT INTO NomeTabelaUsuario(NomeDoCampoDaTabela, NomeDoCampoDaTabela) VALUES('" & Me.NomeCampoDoForm & "', '" & Me.NomeCampoDoForm & "'")
CurrentDb.Execute "INSERT INTO NomeTabelaFornecedores(NomeDoCampo1DaTabela, NomeDoCampo2DaTabela) VALUES('" & Me.NomeCampo1DoForm & "', '" & Me.NomeCampo2DoForm & "'")
End If
End Sub
' Função que irá localizar os dados existentes na tabela
Public Function existeusuario(strterritorio As String, strempresa As String) As Boolean
'On Error GoTo deu_erro
Dim rst As dao.Recordset
Dim sql As String
' Altere o nome da tabela e dos campos na tabela
sql = "SELECT * FROM [nomedatabela] US WHERE US.[nomedocamponatabela] = '" & strterritorio & "' AND US.[nomedocamponatabela] = '" & strempresa & "'"
Set rst = CurrentDb.OpenRecordset(sql)
If rst.BOF And rst.EOF Then
existeusuario = False
Else
existeusuario = True
End If
rst.Clone
Set rst = Nothing
Exit Function
'deu_erro:
'MsgBox Err.Description
End Function