Lar Mídia social Entendendo o Excel VBA IsDate Function - dummies

Entendendo o Excel VBA IsDate Function - dummies

Vídeo: condição para data com vba 2025

Vídeo: condição para data com vba 2025
Anonim

A função IsDate do VBA supostamente diz se uma string de texto pode ser interpretada como uma data. Por exemplo, todas as seguintes expressões avaliam como True:

IsDate ("5/25/2015") IsDate ("16 de janeiro") IsDate ("12-1") IsDate ("12/1/15") IsDate ("2/30") IsDate ("30/2")

Nos dois últimos exemplos, observe que IsDate não é exigente sobre a ordem do dia e mês. Ambas essas seqüências de caracteres podem ser interpretadas como uma data, então IsDate retorna True (independentemente das configurações do formato da data do sistema).

Veja algumas informações de um artigo de suporte da Microsoft:

As funções de data do VBA IsDate, Format, CDate e CVDate utilizam uma função encontrada na automação OLE (OleAut32. Dll). Esta função procura todos os formatos de data possíveis tokenizando cada um dos valores separados na cadeia que representa a data e retorna um valor booleano que indica se a entrada pode ser representada como uma Data.

Isto é importante lembrar ao usar a função para interpretar uma data que contém um ano de 2 dígitos. Diferentes Locais usam vários formatos de data (ou seja, mm / dd / aa, yy / mm / dd, " DD MMM YY " , " YY MMM DD " , e assim por diante) e, portanto, a função tenta os dígitos em todas as posições até que a função tenha encontrado uma data válida ou esgotado todas as possibilidades.

Apenas porque o IsDate reconhece uma seqüência de caracteres como uma data não significa que a string pode ser convertida de forma confiável em uma data. Em alguns casos, o resultado é ambíguo. Por exemplo, e essa expressão?

IsDate ("29-Feb-01")

29 de fevereiro de 2001 não é uma data válida. No entanto, esta expressão retorna True porque 1 de fevereiro de 1929 (e 2 de janeiro de 1929) são datas válidas. E assim são as mesmas datas em 2029.

Uma busca pela documentação do IsDate apareceu vazia. Com base no teste, o IsDate aceita qualquer um dos seguintes caracteres separadores: uma barra (/), um hífen (-), uma vírgula (,), um ponto (.) E um espaço.

Portanto, as seguintes expressões retornam True:

IsDate ("5. 1") IsDate ("30 6") IsDate ("30, 6") IsDate ("1/2")

Mas então há essa anomalia: as seguintes expressões retornam True:

IsDate ("5. 1. 5") IsDate ("5. 1. 05")

No entanto, inexplicavelmente, essa expressão retorna False:

IsDate ("5. 1. 2005")

Suponha que você criou um UserForm com uma InputBox onde o usuário insere uma data. Deve ficar claro que usar o IsDate para validar a entrada não é muito confiável.

As coisas ficam ainda mais confusas quando percebe que IsDate também cobre valores de tempo. (Não há nenhuma função correspondente de IsTime). Então, as seguintes expressões retornam True:

IsDate ("4: 45") IsDate ("4. 45") IsDate ("4 45") IsDate ("4/45 ") IsDate (" 23: 59 ")

Essas expressões retornam False:

IsDate (" 4: 60 ") IsDate (" 24. 45 ")

É importante ressaltar que o IsDate não exiba todas essas peculiaridades quando você passa um argumento Range. Por exemplo:

IsDate (Range ("A1"))

Parece que o IsDate é perfeitamente confiável na identificação de células que contém uma data ou uma hora. Não identifica, por exemplo, uma célula que contenha 5. 1 como data. Se seu código precisa determinar se uma string pode ser interpretada como uma data, a melhor solução é colocar essa string em uma célula e, em seguida, escrever um código para verificar o conteúdo da célula.

Entendendo o Excel VBA IsDate Function - dummies

Escolha dos editores

Por que as pessoas gostam de comunidades on-line - manequins

Por que as pessoas gostam de comunidades on-line - manequins

Como gerente de comunidade on-line, sabendo hábitos e razões de participação dos membros O primeiro passo para manter as coisas interessantes. Depois de saber disso, você pode pensar sobre o que irá manter os membros voltando para mais. Ajustar e vender não são os únicos motivos pelos quais as pessoas estão a convergir online. Quer se trate de falar política, faça ...

Por que lento e constante ganha a corrida de comunidade on-line - as comunidades online não estão configuradas - <ns

Por que lento e constante ganha a corrida de comunidade on-line - as comunidades online não estão configuradas -

It-and-forget-it assuntos. Embora o melhor cenário seja para alcançar um crescimento constante e orgânico, a verdade é que não acontece da noite para a noite. Você pode estar frustrado primeiro porque você tem apenas alguns membros por vez e seu empregador pode não pensar que sua comunidade está crescendo rapidamente o suficiente, mas a verdade de ...

Onde encontrar fontes para o site do seu blog - manequins

Onde encontrar fontes para o site do seu blog - manequins

Com tantos lugares na web para encontrar fontes, pode ser difícil encontrar os melhores sites. Além das Fontes da Web do Google, as seguintes listas indicam alguns de meus lugares favoritos para procurar fontes, gratuitas ou de taxa. À medida que você segue sua busca de busca de fontes, você precisa estar familiarizado ...

Escolha dos editores

Tempo Único Atividades para Bill por Time no QuickBooks 2014 - dummies

Tempo Único Atividades para Bill por Time no QuickBooks 2014 - dummies

Na maioria das vezes, linha os itens que aparecem em uma fatura são itens que você descreve na lista de itens e, em seguida, quantifica diretamente na nota fiscal. No entanto, em algumas empresas de serviços, você pode realmente vender muitas unidades do mesmo item. Se você deseja gravar as atividades de serviço à medida que elas ocorrem, escolha os Clientes → Digite ...

Top-Line Budgeting e QuickBooks - dummies

Top-Line Budgeting e QuickBooks - dummies

Antes de poder criar e usar um orçamento no QuickBooks, você precisa Compreenda algo sobre orçamentação. Um orçamento de topo é a técnica de orçamento mais simples disponível. Um orçamento de primeira linha leva o número do ano passado ou o número do mês passado e os usa para o orçamento deste ano. Claro, se a inflação ocorreu, um orçamento de topo pode inflar ...

Dicas para rastrear o que seus clientes devem no QuickBooks 2015 - manequins

Dicas para rastrear o que seus clientes devem no QuickBooks 2015 - manequins

No QuickBooks 2015, você pode rastrear o que um cliente deve em algumas maneiras. Provavelmente, o método mais simples é exibir o Centro de atendimento ao cliente, escolhendo Customer → Customer Center. Em seguida, selecione o cliente na lista Clientes e Trabalhos (que aparece ao longo da margem esquerda da janela). QuickBooks inicia uma página que lista as transações ...

Escolha dos editores

Excel 2010 Workbook For Dummies Cheat Sheet - dummies

Excel 2010 Workbook For Dummies Cheat Sheet - dummies

Como parte integrante da interface da faixa de opções usada por todos os Principais aplicações no Microsoft Office 2010, o Excel oferece acesso a sequências de teclas de atalho que, para todos os entusiastas do teclado, podem acelerar o processo de seleção dos comandos do programa. Para economizar tempo ao acessar os comandos, procure a sequência de teclas quentes ...

Excel Painéis e relatórios: crie sua primeira tabela dinâmica - manequins

Excel Painéis e relatórios: crie sua primeira tabela dinâmica - manequins

Uma tabela dinâmica no Excel permite você gasta menos tempo mantendo seus painéis e relatórios e mais tempo fazendo outras coisas úteis. Nenhuma utilidade no conjunto do Excel permite que você obtenha esse modelo de dados eficiente melhor que uma tabela dinâmica. Use as seguintes etapas para percorrer a criação do seu primeiro ...

Excel Painéis e Relatórios: Exemplo de botão de opção - manequins

Excel Painéis e Relatórios: Exemplo de botão de opção - manequins

Uma das maneiras pelas quais você pode usar os botões de opção em seus painéis e relatórios do Excel são para alimentar um único gráfico com dados diferentes, com base na opção selecionada. Esta figura ilustra um exemplo disso. Quando cada categoria é selecionada, o gráfico único é atualizado para mostrar os dados dessa seleção. Agora, você ...