Ir ao conteúdo
  • Cadastre-se

Excel erro 94 null invalido


Posts recomendados

Olá, por favor, preciso de ajuda urgente... 

 

Vi um vídeo sobre formulario e resolvi reproduzir porque a princípio atendia exatamente a uma tarefa que preciso fazer, pretendo fazer o curso completo futuramente, mas o fato é que quando estava quase acabando o formulário deu  esse erro de execução: 2147417848 (80010108)  " O metodo 'Value' do objeto "Range" falhou. Acredito que o erro esteja na macro editar e no campo data porque sempre que tento editar, ele fecha a planilha e abre um novo arquivo em branco. Agora, o erro que aparece é 94 null invalido. 

 

Alguém pode me ajudar?

 

Planilha de Reporte de Ocorrencias - copia erro - clube.zip

  • Obrigado 1
  • Triste 1
Link para o comentário
Compartilhar em outros sites

@LIKCZ Testei a inclusão de um registro e não aconteceu nenhum erro, mas se a tabela não tiver nenhum registro pode dar erro na linha com DataBodyRange. Para evitar isso você pode testar a quantidade de linhas na tabela antes de carregar o ListBox.

 

Evite usar procedimentos públicos para pegar ou atribuir valores dos controles do formulário como fez no Módulo 2. Os comandos para inserir e editar podem ficar no módulo do próprio formulário.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@Midori Entendi.. o formulário registra bem, mas na hora de editar é que acontece o erro. O arquivo fecha =/

A macro de editar é esse... não sei o que acontece. 

Sub EDITAR()

bloqueado = True
Dim tabela As ListObject
Dim n As Integer, l As Integer
Set tabela = Plan1.ListObjects(1)

n = Registro_Ocorrencias.ListBox1.Value
l = tabela.Range.Columns().Find(n, , , xlWhole).Row

tabela.Range(l, 2).Value = Registro_Ocorrencias.txtdata.Value
tabela.Range(l, 3).Value = Registro_Ocorrencias.txtnomedentista.Value
tabela.Range(l, 4).Value = Registro_Ocorrencias.txtnomepaciente.Value
tabela.Range(l, 5).Value = Registro_Ocorrencias.cbbprocedimento.Value

Call Atualizar_ListBox
MsgBox "A ocorrência foi atualizada"
bloqueado = False

End Sub

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@Midori Acho que o erro está aqui (foto anexo). Não entendo o motivo de ter dado nulo. 

 

Sub Editar()

bloqueado = True
Dim TABELA As ListObject
Dim n As Integer, l As Integer

Set TABELA = Plan1.ListObjects(1)

AQUI ACONTECE O ERRO:

n = UserForm1.ListBox1.Value DÁ QUE O VALOR É NULO. 

erro planilha.png

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@LIKCZ Se tentar rodar esse comando sem selecionar nada no ListBox vai receber esse erro. Para evitar isso você pode testar o valor indice que retorna -1 quando nada é selecionado no controle, p.ex,

If Registro_Ocorrencias.ListBox1.ListIndex = -1 Then
    MsgBox "Selecione o registro"
    Exit Sub
End If

 

Link para o comentário
Compartilhar em outros sites

@LIKCZ Você teria que dar mais detalhes para mostrar o motivo de não ter conseguido com o trecho que postei, mas como ele serve para verificar se a seleção foi feita é claro que deve ser colocado no mesmo procedimento e antes de tentar pegar o valor do ListBox. Bom que conseguiu resolver, se possível poste como fez para servir de referência para quem tiver o mesmo problema.

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...