我正在将Excel文件导入到Access 2010中,并且日期字段(CALLDATE)以文本(YYYYMMDD)形式出现。我想使用更新查询来更新新的字段“dateofcall”,但使用日期/时间格式。我试图使用:如何将文本字段转换为Access 2010中的日期/时间字段?
UPDATE tbl_Import SET tbl_Import.dateofcall = CDate([tbl_Import].[CALLDATE]);
我认为这将是那么简单,但它显示空白与日期格式。我也尝试使用DateSerriel(),但仍然出现错误。有什么建议么?
第一那'yyyymmdd'字符串转换为一个适当的'YYYY-MM-dd'字符串(例如添加短划线),然后执行一个ALTER TABLE来改变字符串字段类型为日期类型。只要字符串** LOOKS **就像一个有效日期一样,访问将自动将字符串转换为实际日期值。 –
@remou:在Access 2010中可以正常工作。简单的1个字符串字段表,两个记录:'2012-03-10'和'20120310'。将字段类型更改为日期/时间,接受警告消息,并且2012-03-10已正确转换为本地'10/03/2012'(通过我的区域设置),并且20120310被禁止为无效。 –
以下是对我有用的东西(@Marc B和@Remou的一小部分)我将下面的公式放在更新部分中,它被接受为日期。格式(右([calldate],2)&“/”&Mid([calldate],5,2)&“/”&Left([calldate],4))' –