如何在Excel中检查date格式

我在Excel文件中有大约2万条logging,并且有大约四个有date的列。 我正试图将这些插入到SQL中。 不过date栏的date格式不正确,例如: 02/09201502/90/20152015 。 因此,逐一检查20,000条logging将是非常漫长的。

我试图计算/但它没有工作。 它将更改列的格式。

我正在寻找一些公式,可以检查格式,也许颜色的单元格或类似的东西。

今天我正在处理这个问题,并希望join到nekomatic的开始。

在开始之前, TEXT公式需要遵循我们正在使用的date格式。 如果您的date是月/日/年的格式,那么TEXT公式的第二个参数就是“mm / dd / yyyy”。 如果格式是日/月/年,则公式需要使用“dd / mm / yyyy”。 为了我在这里的答案,我将以月/日/年格式来logging我的date。

现在,我们假设单元格A1包含值12/1/2015 ,单元格A2包含值monkey ,单元格A3包含值2015 。 此外,假设我们的最低可接受date是2000年12月1日。

在B栏中,我们将input公式

=IF(ISERROR(DATEVALUE(TEXT(A1,"mm/dd/yyyy"))),"not a date",IF(A1 >=DATEVALUE(TEXT("01/01/2000","mm/dd/yyyy")),A1,"not a valid date"))

上面的公式将validation正确的date,testing非date值,不完整的date和date值超出可接受的最小值。

我们在B栏中的结果应该显示在12/1/2015年12月not a datenot a valid date not a datenot a valid date

您给出的两个示例是可以使用条件格式标识的文本,方法是应用公式规则,例如:

 =ISTEXT(A1) 

并根据需要着色结果。 如果你所有的date(即使是有效的格式)都是文本,那么会有一个问题,但我猜测事实并非如此。

对于第三个例子(即2015 )CF公式规则,例如:

 =AND(A1<2500,A1>0) 

可能有帮助。

如果你的列是date和其他正确的文本string的混合物,你的方法可能比更一般的ISTEXT更好,例如CF公式规则:

 =FIND("/",A1)>0 

如果您可以使用公式将列添加到Excel工作表

 =DATEVALUE(TEXT(A1,"dd/mm/yyyy")) 

如果A1的内容不是dd / mm / yyyy格式的有效date,则应返回#VALUE 。 您可以过滤此值以识别不正确的logging。

编辑:如果A1只包含2015这个公式返回07/07/1905 (如果公式单元格被格式化为date),所以你可以通过筛选date之前的文件应该包含最早的正确date。