【发布时间】:2017-03-11 13:40:35
【问题描述】:
尝试将数据从 Access 数据库文件导出到 SQL Server 2012 时,我收到错误数据错误。查了一下,发现表和列报错了。
该列包含日期'mm/dd/yyyy'格式的数据,并且似乎有一些错误的条目。
目前我正在尝试查找错误数据,但是有 4000+ 行数据。作为出路,我决定使用 excel 来使用它的条件格式。但是,我找不到/创建适合我需要的规则。
所以在我开始寻找其他内容之前,我想问一下:有没有办法(公式或规则)突出显示不符合正确格式的单元格?
例如,我需要精确的格式“mm/dd/yyyy”,因此 01/01/2016 将是正确的,而 1/1/2016 或 01/01/16 将突出显示。
【问题讨论】:
-
您可能想阅读以下内容:stackoverflow.com/questions/37100821/… 和以下内容:stackoverflow.com/questions/38000194/… 之后,您会意识到 Excel 中的所有日期只是数字。因此,您只需要检查所有这些单元格是否都包含数字。这是一个简单的验证规则。但是,如果您只有格式为日期的文本,那么您就不走运了,需要一些 VBA 编程来完成。
-
@Ralph 在 excel 中,它是一种自定义格式 mm/dd/yyyy,所以我认为这是文本。然后我似乎在这里不走运。不过还是会读一读,谢谢。
-
文本日期一团糟。有 Excel 公式(例如
DATEVALUE)和 vba 函数(例如CDate),它们尝试将文本日期转换为实际日期(格式化为日期的数字)。然而,它们可能是错误的,在我的公司环境中,我开始明白最好解析所有文本字符串并自己(“手动”)将它们转换为真实日期,然后验证结果(确保你没有得到超出范围的日期,例如 1921 年的日期)。 -
@Ralph 似乎有很多不必要的工作。我会寻找一些替代解决方案。