2016-08-04 4 views
0

私はこのようにExcelに私に与えられたデータを持っています。ある従業員が、同じ日または異なる日に複数回電話をした可能性があります。各empidの2つのタイムスタンプの差を計算する必要があります

empid  call_time_starts 
1234   7/1/16 9:00 
5678   7/21/16 0:00 
1234   7/19/16 3:00 
7687   7/21/16 6:00 
1234   7/17/16 6:00 

私は最後の呼び出し以来、EMPIDのための日数を見つける必要があり

empid  call_time_starts no._of_days 
1234   7/1/16 9:00   
5678   7/21/16 0:00 
1234   7/19/16 3:00  18 days 
5678   7/28/16 6:00  7 days 

のようになりたいです。 のように1234 IDは7/1/16 9:00に最初に呼び出され、今度は1835年以降に 7/19/16 3:00に電話しています。私はその18日を見つける必要があります。 私はrを使うことができます。

答えて

0

DAYS()機能は、2つのタイムスタンプの間の日数を見つけるために必要な機能です。あなたは自動的にそのIDの前のタイムスタンプ以降の日を検索したい場合は

は、その後、あなたのempidが列Aであると仮定し

=DAYS(B2,INDEX(B$1:B2,MAX((A$1:A1=A2)*ROW(A$1:A1)))) 

C2

にこのような何かを試してみて、 call_time_startsは列Bにある

+0

Formuaの理解を助けてください。私は出力を得ました:) – separ1

+0

'B2'は終了日です。 'INDEX'公式は、現在の行' n'(範囲 'A $ 1:A(n-1)')の上の最後の行( 'MAX'行番号)を列Bで探し、' empid'が現在の行( 'A $ 1:A(n-1)= A(n)')のものと同じです。等価性は0または1と評価されるため、IDが一致しない行番号は削除されます。 –

+0

あなたはB $ 1を書いたときに列ヘッダを正しく含んでいませんか? B $ 1はb列の最初の日付を参照していますか? – separ1

関連する問題