Ai quando clico no Debug , essa linha frmPrincipal.Show fica amarela , alguém poderia corrigir o meu erro
ControleGeral
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Private Sub cmdEntrar_Click()
Set rs = CreateObject("ADODB.Recordset")
With rs
.Open "select usuario, senha, cod_usuario from usuarios where usuario='" & txtUsuario.Text & "' and senha='" & txtSenha.Text & "'", cn, adOpenKeyset, adLockOptimistic
If .RecordCount = 0 Then
MsgBox "Usuário ou senha inválida!", vbExclamation, "Erro"
Else
codigo = CLng(rs("cod_usuario"))
frmPrincipal.Show
Unload Me
End If
.Close
End With
End Sub
Private Sub cmdSair_Click()
cn.Close
Unload Me
End Sub
Private Sub Form_Load()
cn.CursorLocation = adUseClient 'Define o cursor como local
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\Banco.mdb" 'Abre o BD
rs.Open "SELECT * FROM usuarios", cn, adOpenDynamic, adLockOptimistic 'Abre a tabela no objeto "rs"
End Sub
frmPrincipal.Show
Private Sub Form_Load()
mnClientes.Enabled = False
mnProdutos.Enabled = False
mnFornecedores.Enabled = False
mnPagar.Enabled = False
mnReceber.Enabled = False
mnFluxo.Enabled = False
Set rs = CreateObject("ADODB.Recordset")
With rs
.Open "select a.aplicacao, b.acesso from aplicacoes a, acesso b where a.cod_aplicacao = b.cod_aplicacao " _
& "and b.cod_usuario=" & codigo, cn, adOpenKeyset, adLockOptimistic
If .RecordCount = 0 Then
MsgBox "Usuário sem acesso ao sistema!", vbExclamation, "Erro"
Else
Do While Not .EOF
If rs("Aplicacao") = "Clientes" And rs("Acesso") = 1 Then
mnClientes.Enabled = True
End If
If rs("Aplicacao") = "Produtos" And rs("Acesso") = 1 Then
mnProdutos.Enabled = True
End If
If rs("Aplicacao") = "Fornecedores" And rs("Acesso") = 1 Then
mnFornecedores.Enabled = True
End If
If rs("Aplicacao") = "Pagar" And rs("Acesso") = 1 Then
mnPagar.Enabled = True
End If
If rs("Aplicacao") = "Receber" And rs("Acesso") = 1 Then
mnReceber.Enabled = True
End If
If rs("Aplicacao") = "Fluxo" And rs("Acesso") = 1 Then
mnFluxo.Enabled = True
End If
.MoveNext
Loop
End If
.Close
End With
End Sub
Private Sub mnSair_Click()
cn.Close
Unload Me
End Sub
Pergunta
mestre fyoda
Run-Time error '424':
Object required
Ai quando clico no Debug , essa linha frmPrincipal.Show fica amarela , alguém poderia corrigir o meu erro
ControleGeral
Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset Private Sub cmdEntrar_Click() Set rs = CreateObject("ADODB.Recordset") With rs .Open "select usuario, senha, cod_usuario from usuarios where usuario='" & txtUsuario.Text & "' and senha='" & txtSenha.Text & "'", cn, adOpenKeyset, adLockOptimistic If .RecordCount = 0 Then MsgBox "Usuário ou senha inválida!", vbExclamation, "Erro" Else codigo = CLng(rs("cod_usuario")) frmPrincipal.Show Unload Me End If .Close End With End Sub Private Sub cmdSair_Click() cn.Close Unload Me End Sub Private Sub Form_Load() cn.CursorLocation = adUseClient 'Define o cursor como local cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\Banco.mdb" 'Abre o BD rs.Open "SELECT * FROM usuarios", cn, adOpenDynamic, adLockOptimistic 'Abre a tabela no objeto "rs" End SubfrmPrincipal.ShowPrivate Sub Form_Load() mnClientes.Enabled = False mnProdutos.Enabled = False mnFornecedores.Enabled = False mnPagar.Enabled = False mnReceber.Enabled = False mnFluxo.Enabled = False Set rs = CreateObject("ADODB.Recordset") With rs .Open "select a.aplicacao, b.acesso from aplicacoes a, acesso b where a.cod_aplicacao = b.cod_aplicacao " _ & "and b.cod_usuario=" & codigo, cn, adOpenKeyset, adLockOptimistic If .RecordCount = 0 Then MsgBox "Usuário sem acesso ao sistema!", vbExclamation, "Erro" Else Do While Not .EOF If rs("Aplicacao") = "Clientes" And rs("Acesso") = 1 Then mnClientes.Enabled = True End If If rs("Aplicacao") = "Produtos" And rs("Acesso") = 1 Then mnProdutos.Enabled = True End If If rs("Aplicacao") = "Fornecedores" And rs("Acesso") = 1 Then mnFornecedores.Enabled = True End If If rs("Aplicacao") = "Pagar" And rs("Acesso") = 1 Then mnPagar.Enabled = True End If If rs("Aplicacao") = "Receber" And rs("Acesso") = 1 Then mnReceber.Enabled = True End If If rs("Aplicacao") = "Fluxo" And rs("Acesso") = 1 Then mnFluxo.Enabled = True End If .MoveNext Loop End If .Close End With End Sub Private Sub mnSair_Click() cn.Close Unload Me End SubLink para o comentário
Compartilhar em outros sites
8 respostass a esta questão
Posts Recomendados