2016-09-19 19 views
0

我在记事本中下面的文字数据。我将这些数据复制并粘贴到Excel中,每行占用一个单元格。解析并在Excel Concatenaing日期从文本

12:07:33 (MLM) TIMESTAMP 8/9/2016 
    11:22:41 (MLM) OUT: 
    11:23:09 (MLM) DENIED: (Licensed number of users already reached. (-4,342:10054 "")) 
    11:23:09 (MLM) OUT: 
    11:35:05 (MLM) IN: User 23112 
    12:02:50 (MLM) IN: 
    12:07:33 (MLM) TIMESTAMP 8/10/2016   
    12:02:50 (MLM) IN: 
    12:02:50 (MLM) IN: 
    12:05:21 (MLM) DENIED:(Licensed number of users already reached. (-4,342)) 
    12:05:21 (MLM) OUT: 
    12:05:25 (MLM) OUT: 
    12:07:33 (MLM) TIMESTAMP 8/11/2016 
    12:11:17 (MLM) OUT: 

我需要解析到Excel这段文字,所以我可以算多久的某些方面出现(如IN,OUT,否定等),并看到IN和OUT之间的某些课程需要多长时间。

我可以用文字来列条款也分为不同的细胞。但是,我需要连接日期信息。每当有TIMESTAMP术语时,后面的所有时间栏都需要有该日期。

因此,而不是仅仅有[时间],我想时间列是[时间,日期],其中日期是最近TIEMSTAMP条目。我想有这样的:

12:07:33, 8/10/2016 (MLM) TIMESTAMP 8/10/2016   
    12:02:50, 8/10/2016 (MLM) IN: 
    12:02:50, 8/10/2016 (MLM) IN: 
    5:07:23, 8/11/2016 (MLM) TIMESTAMP 8/11/2016 
    5:11:17, 8/11/2016 (MLM) OUT:  

我如何可以编写一个函数,以确定其中timestamp发生与时间列串连,直到TIMESTAMP的下一次出现?或者,我怎样才能使用过滤器来实现这一目标?

+0

我会亲自使用RegExp。 – Comintern

+0

检查最右边的以空格分隔的子字符串是否看起来像日期。 –

+0

另外,您需要一种不同的方法。如果您将时间和日期与逗号连接,如上所示,确定日期/时间的公式将非常复杂。更好地添加它们,创建一个“真正的”excel日期,或者在单独的列中创建。 –

回答

1
  • 时间为两列(A:B)拆分后您的数据
  • 插入
  • 随着B1选择一个& B之间的新列,定义了一个名为公式:

LastWord *Refers to* =TRIM(RIGHT(SUBSTITUTE(Sheet3!$C1," ",REPT(" ",99)),99)) 

输入此公式:

根据需要10
B1: =A1+(IF(ISNUMBER(FIND("/",LastWord)),LastWord,INT(OFFSET(B1,-1,0)))) 

格式。我用hh:mm:ss, m/d/yyyy使它看起来像你的例子,但你可以使用其他格式。

这给了你,你可以在Excel中的日期,请用一个“真实”的日期时间戳。

但是,如果您的数据在LastWord中包含任何非日期字也包含斜线/,则此方法将不起作用,您将需要使用更复杂的例程。如果您的Windows区域日期设置与数据中的日期格式不同,它也会失败。

enter image description here

+0

非常感谢!那正是我所期待的。 – beeba