You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

QlikView中提取Check_in字段日期与时间的问题求助

我来帮你搞定这两个头疼的问题——QlikView里拆分提取多个日期时间条目,还有Excel里部分日期转不了的状况:

QlikView 脚本处理方案

你的Check_in字段是多个日期时间用空格堆在一起的字符串,直接用Time(Fromtime)肯定不行,因为根本没有Fromtime这个字段呀。得先把这些日期时间拆成单独条目,再转成标准格式:

  • 第一步:把多值字符串拆分成多行
    用SubField配合IterNo()循环拆分每个日期时间片段,脚本示例:
    // 先加载原始数据,拆分出每个日期时间文本
    RawData:
    LOAD 
        *,
        SubField(Check_in, ' ', IterNo()) AS DateTimeRaw
    FROM [你的数据源文件路径]
    WHILE IterNo() <= SubStringCount(Check_in, ' ') + 1;
    
    // 再把文本转成标准日期时间格式
    FinalData:
    LOAD 
        *,
        // 用Timestamp#识别DD/MM/YYYY HH:mm:ss格式,再转成时间戳
        Timestamp(Timestamp#(DateTimeRaw, 'DD/MM/YYYY HH:mm:ss')) AS check_in
    RESIDENT RawData;
    
    // 清理临时表
    DROP TABLE RawData;
    
    这段脚本会把原来一行里的多个日期时间,拆成单独的行,每个行对应一个check_in日期时间值。
Excel 日期格式转换问题

部分日期能转、部分不行,基本都是因为那些“转不动”的日期是文本格式——看起来像日期,但Excel没把它识别成日期。试试这两个方法:

  • 方法1:文本分列法(最省心)

    1. 选中有问题的日期列,点击顶部菜单栏的「数据」→「分列」
    2. 第一步选「分隔符号」,点击下一步;第二步取消所有分隔符,直接下一步
    3. 最后一步,列数据格式选「日期」,类型选「DMY(日/月/年)」,点击完成
      这样Excel会强制把文本格式的日期转成真正的日期时间值。
  • 方法2:公式强制转换(对付顽固文本)
    如果分列不管用,用公式手动提取年月日和时间:

    =DATE(MID(A1,7,4), MID(A1,4,2), LEFT(A1,2)) + TIMEVALUE(RIGHT(A1,8))
    

    解释一下:MID(A1,7,4)提取年份(比如从18/11/2019里拿2019),MID(A1,4,2)提取月份,LEFT(A1,2)提取日期;TIMEVALUE(RIGHT(A1,8))提取后面的时间。把公式结果单元格设置成「日期时间」格式就OK了。

内容的提问来源于stack exchange,提问作者Bakhtawar Ashiq

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 08:41:14