DUVIDA AO APLICAR O METODO EDIT NO ACCESS

USUARIO.EXCLUIDOS 05/08/2007 14:32:01
#229550
Pessoal preciso de ajuda no cod abaixo, o erro é que a tabela nao possui registros para ser atualizado , porém esta tabela nao deve conter registros até que algum usuário faça o login, e para isso devo rodar o cod:
Private Sub Bnt_OK_Click()
Dim wSenha As String
Dim rsInf As Recordset
If IsNull(cmbUser) Then
MsgBox "Selecione um Usuário na Lista", vbCritical, "Acesso Negado"
cmbUser.SetFocus
ElseIf IsNull(TxtPass) Then
MsgBox "Entre com a Senha", vbCritical, "Acesso Negado"
TxtPass.SetFocus
Else
wSenha = DLookup("[Senha]", "Tbl_Usuarios", "[IdUser] = " & Val(cmbUser))
If TxtPass = wSenha Then
Set rsInf = CurrentDb.OpenRecordset("Tbl_Conf")
rsInf.Edit
rsInf!IdUser = cmbUser
rsInf!IdNivel = DLookup("[Nivel]", "Tbl_Usuarios", "[IdUser] = " & Val(cmbUser))
Me.Refresh
rsInf.Update
Set rsInf = Nothing
DoCmd.Close acForm, 1
If Not EstaCarregado("Menu_de_Controle") Then
DoCmd.OpenForm "Menu de Controle"
End If
Else
MsgBox "Senha Incorreta", vbCritical, "Acesso Negado"
TxtPass = Null
TxtPass.SetFocus
End If
End If
End Sub
vc podem me ajudar
LUIS.FLAVIO 05/08/2007 16:05:41
#229552
Amigo primeiro você tem que fazer um adicionar o registro depois fazer a alteração ou possível exclusão como pode alterar sem conter o registro.
USUARIO.EXCLUIDOS 07/08/2007 11:59:21
#229793
Certo Luis eu inclui o registro e entao apoós clicar novamente no botao o access gera a seguinte mensagem:

Erro em Tempo de Execussão:'2001':
Voce cancelou a operação anterior.

E ao Depurar a linha que aparece com erro é:
rsInf!IdNivel = DLookup("[Nivel]", "Tbl_Usuarios", "[IdUser] = " & Val(cmbUser))

Vc Saberia me dizer o porque?
Abraços

USUARIO.EXCLUIDOS 07/08/2007 12:05:54
#229794


Creio que vc tenha q posicionar o cursor recordset no registro desejado, antes de usar o Edit

através do Find ou Seek...

boa sorte e sucesso!
FLAVIOGUILHERME 07/08/2007 12:28:15
#229799
Resposta escolhida
Amigo você quer preencher o
rsInf!IdNivel com "[Nivel] Tbl_Usuarios [IdUser]" & Val(cmbUser)) e depois gravar ?

Da maneira que esta declarado esta carregando isso como texto.
Quando você coloca "" ele vira apenas um texto, e pelo que vi deve Nivel, Tbl_Usuarios eIdUser deve ser um campo da tabela ou um componente certo.

Verifique, se for campo ou componente tem que tirar o "", se for campo da tabela tem que colocar o rs! respectivo antes ok.
USUARIO.EXCLUIDOS 07/08/2007 13:29:27
#229821
Guilherme OK muito Obrigada! Funcionou!
Tópico encerrado , respostas não são mais permitidas