Compartilhar via

Ajuda para datas em textbox

Anônima
2010-02-02T22:31:27+00:00

Tenho o seguinte código em um UserForm para editar ou inserir data na planilha:

TextnovoBoxferias = Format(CDate(ListBox1.Column(98)), "dd/mm/yyyy")

Para inserir a data está ok. Ela retorna a mesma data que foi preenchida.

Agora, preciso de uma complementação ou adaptação para no caso de deixar a textBox sem preencher e ela não me retornar em 30/12/1899, porque está acontecento isso, quando a text não é preenchida.

Abraços,

Celso

Microsoft 365 e Office 365 | Instalar, resgatar, ativar | Para uso doméstico | Outro

Pergunta bloqueada. Essa pergunta foi migrada da Comunidade de Suporte da Microsoft. É possível votar se é útil, mas não é possível adicionar comentários ou respostas ou seguir a pergunta.

0 comentários Sem comentários

8 respostas

Classificar por: Mais útil
  1. Anônima
    2010-02-03T10:54:53+00:00

    Utilize o debug para saber se está ou não passando not este lógico. Coloque um opnto de parada (F9) na linha depois do teste de "nulo" e verifique se está passando por ele (use F8 para passo-a-passo). Estou com a impressão que o problema da lógica não está aí.

    Esta resposta foi útil?

    0 comentários Sem comentários
  2. Anônima
    2010-02-03T10:47:44+00:00

    Oh meu caro LuizVS, gostaria muito que desse certo mas ainda não funcionou. A data que é preenchida está retornando ok, mas quando seleciona um nome que ainda não foi inserido a data, ou seja, onde a célula está vazia, aí retorna com a data 30/12/1899.

    Esta resposta foi útil?

    0 comentários Sem comentários
  3. Anônima
    2010-02-03T10:19:32+00:00

    Experimente:

    If Not IsNull(ListBox1.Column(98)) Then

    ...

    End If

    Esta resposta foi útil?

    0 comentários Sem comentários
  4. Anônima
    2010-02-02T23:51:28+00:00

    Eu tentei essas condições:

    If IsDate(ListBox1.Column(98)) Then

        TextnovoBoxferias = Format(CDate(ListBox1.Column(98)), "dd/mm/yyyy")

    End If

     ou

    If ListBox1.Column(98) <> "" Then

        TextnovoBoxferias = Format(CDate(ListBox1.Column(98)), "dd/mm/yyyy")

    End If

    Mas não resolveu. Aí eu tentei essa:

    If = ListBox1.Column(98)="" then else textnovoBoxferias = Format(CDate(ListBox1.Column(98)), "dd/mm/yyyy")

    Mas essa dá erro de compilação.

    Olha, não endendo bem de VBA, apenas gostaria de resolver essa questão para o meu projeto. Se puder me enviar um código correto, desde já eu agradeço.

    Esta resposta foi útil?

    0 comentários Sem comentários
  5. Anônima
    2010-02-02T23:23:31+00:00

    Insira um teste lógico de condição para o caso de vazio e desvie do erro.

    Esta resposta foi útil?

    0 comentários Sem comentários