Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia galera do iMaster !! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
Sou novata em VBA e estou com a seguinte dificuldade.
Tenho o código de um formulário e o mesmo exibe o seguinte erro :
"Erro em tempo de execução '94' Uso de 'Null' inválido".
Já sei pq dá esse erro, só não sei como consertar =P
É um formulário para cadastro de celular de um funcionário.
O formulário possui os seguintes campo :
Linha (ComboBox)
Tipo Aparelho (Text Field)
Aparelho (Text Field)
Chip (Text Field)
Data Entrada (Text Field)
Matrícula (ComboBox)
Excepcionalidade (Text Field)
Viagem Internacional (Text Field)
Observação (Text Field)
Botão Inserir
Botão para retornar ao menu principal.
Sendo que ao lado do botão para retornar, tem 2 caixas de texto que aparecem no modo estrutura e não aparecem qndo se clica
para abrir, normalmente, o formulário (Possuem o nome de Texto41 e Texto43). Alguém pode me dizer o q é isso ?
O problema é o seguinte : Se eu clico, ou no text field, Combobox, botão para voltar ou no botão inserir sem que
o campo linha esteja "marcado" dá esse erro. O que pode ser ?
O código do programa é esse abaixo :
Option Compare Database
Private Sub Comando44_Click()
DoCmd.SetWarnings False
DoCmd.OpenQuery "indisponibiliza linha alocação"
DoCmd.OpenQuery "indisponibiliza chip alocação"
DoCmd.OpenQuery "indisponibiliza aparelho alocação"
DoCmd.SetWarnings True
If (Me.Número_Série_Aparelho.Value <> Me.Texto41.Value) Or Nz(Me.Texto41) = "" Then
DoCmd.OpenQuery "Atualiza Linha"
End If
If Me.Número_Chip <> Me.Texto43 Or Nz(Me.Texto43) = "" Then
DoCmd.OpenQuery "Atualiza Linha"
End If
On Error GoTo Err_Comando19_Click
DoCmd.Close acForm, "aloca linha funcionario"
Exit_Comando19_Click:
Exit Sub
Err_Comando19_Click:
MsgBox Err.Description
Resume Exit_Comando19_Click
End Sub
Private Sub NumLinha_Exit(Cancel As Integer)
'If Me.NumLinha = Null Then
' DoCmd.CancelEvent
'End If
Me.Número_Série_Aparelho = Me.Texto41
Me.Número_Chip = Me.Texto43
Dim Marca, Modelo As String
Dim Tipo As String
'Me.Obs_termo = DLookup("[Descricao]", "[modelo]", "[nome_modelo] = '" + Modelo + "' And [marca_modelo] = '" + Marca + "'")
Tipo = DLookup("[Tipo_Linha]", "[Linha]", "[Número Linha] = '" + Me.NumLinha + "'")
Me.Tipo_Aparelho = DLookup("[Descricao]", "[Tipo_Linha]", "[Codigo] = '" + Tipo + "'")
Marca = DLookup("[Marca]", "[Aparelhos]", "[NumSerie] = '" + Me.Número_Série_Aparelho + "'")
Modelo = DLookup("[Modelo]", "[Aparelhos]", "[NumSerie] = '" + Me.Número_Série_Aparelho + "'")
Me.Obs_termo = DLookup("[Descricao]", "[modelo]", "[nome_modelo] = '" + Modelo + "' And [marca_modelo] = '" + Marca + "'")
End Sub
Private Sub Tem_excepcionalidade_AfterUpdate()
If Me.Tem_excepcionalidade = -1 Then
Me.Excepcionalidade.Locked = False
End If
End Sub
Private Sub Comando45_Click()
On Error GoTo Err_Comando45_Click
DoCmd.Close
Exit_Comando45_Click:
Exit Sub
Err_Comando45_Click:
MsgBox Err.Description
Resume Exit_Comando45_Click
End Sub
Pelo o que eu vi no código, acho que tá errado o Comando19 no lugar do Comando44. Tinha feito a alteração,
mas coloquei assim só para que fosse analisado melhor.
Qualquer opinião será bem vinda ^^ http://forum.imasters.com.br/public/style_emoticons/default/joia.gif
Abraços :P
Carregando comentários...