Excel alterando inconsistentemente o formato das células DATE

0

Coluna 1 = O que eu digitei na célula.
Coluna 2 = Qual barra de fórmulas mostra quando a célula está selecionada.
Coluna 3 = Qual célula mostra quando a célula não está selecionada.

     1    |    2      |    3
-----------------------------------
 30-07-17 | 30-07-17  | 30-07-17
 10-08-17 | 10/8/2017 | 08-10-2017
 13-08-17 | 13-08-17  | 13-08-17
 09-09-17 | 9/9/2017  | 09-09-2017

Tentei redigitar, tentei alterar o formato, tentei copiar e colar o formato: nada funciona; as linhas 2 e 4 são sempre assim, embora o formato seja o mesmo para todas as células. O que está errado ? Isso é um bug no Excel?

Estou no Windows 10, usando o Excel 2016.

ATUALIZAÇÃO: Com base nos dados fornecidos pelo @ScottCraner: Se a string DATE na célula for inválida de acordo com as configurações locais (por exemplo, MM = 13 ou 30), a string não será alterada, caso contrário, ela será exibida em algum formato (por exemplo, "DD-MM-AAAA", que pode se misturar MM e DD).
Eu tenho que digitá-lo em "MM-DD-AAAA" e ele será exibido no formato "DD-MM-AAAA", que é o que eu quero.

Uma parte é resolvida, mas as dúvidas permanecem:
Quando DATE é inválido, por que o Excel não mostra nenhum aviso?
Linhas 2 & 4, porque "-" muda para "/"?

OUTRA ATUALIZAÇÃO:
Com mais informações do @RonRosenfeld, acho que o problema foi resolvido.
(1) Se a string de entrada DATE for inválida (de acordo com as configurações regionais), a célula será exibida como está, sem formatação
(1A) A barra de fórmulas também mostrará o texto como ele é.
(1B) Em geral, não haverá notificações para o usuário. Se o usuário quiser notificações desse erro, ele precisará usar a Validação de Dados.
(2) Se a sequência de entrada de DATE for válida (de acordo com as configurações regionais), a célula exibirá no formato fornecido pelo usuário
(2A) A barra de fórmulas mostrará a configuração regional curta.
(2B) Não há como recuperar exatamente o que o usuário digitou.

O Excel está automaticamente mudando as coisas, o que é um pouco confuso!
Obrigado @ScottCraner & @RonRosenfeld!

    
por Prem 23.10.2017 / 20:12

3 respostas

1

Com informações do @ScottCraner & @RonRosenfeld, acho que o problema foi resolvido.
(1) Se a string de entrada DATE for inválida (de acordo com as configurações regionais), a célula será exibida como está, sem formatação. (1A) A barra de fórmulas também mostrará o texto como ele é.
(1B) Em geral, não haverá notificações para o usuário. Se o usuário quiser notificações desse erro, ele precisará usar a Validação de Dados.
(2) Se a sequência de entrada de DATE for válida (de acordo com as configurações regionais), a célula exibirá no formato fornecido pelo usuário
(2A) A barra de fórmulas mostrará a configuração regional curta.
(2B) Não há como recuperar exatamente o que o usuário digitou.

O Excel está automaticamente mudando as coisas, o que é um pouco confuso!
Obrigado @ScottCraner & @RonRosenfeld!

    
por 27.10.2017 / 11:54
0

Use a fórmula = TEXTO (A1, "dd-mm-aaaa") Altere-o para atender ao seu formato específico. Você pode querer limpar o formato das células nas quais você vai usar a fórmula.

    
por 23.10.2017 / 20:25
0

Teve um problema como este com macros. O problema depende do var local para datas.

Você pode forçar uma data assim =Day("A2")&"/"&Month("A2")&"/"&Year("A2") Isso só funcionará se você precisar de strings.

Também existe esse "estranho" (para mim, pelo menos) número de formatação "m / d / aaaa", isso vai levar você var local e saída da data correta. Este trabalhou para mim de forma consistente, caso contrário, dias e meses serão constantemente trocados sem anylogic. Eu usei este aqui em VBA .range(rng).FormatNumber = "m/d/yyyy"

Felicidades

    
por 23.10.2017 / 20:39