すでに投稿した質問を修正しています。私の要件は非常に単純です。
DEFECT_ID LOG_TIME ステータス
1001 2012/08/22 12:03:34 オープン
1001 2012/08/22 12:03:35 保留中
1001 2012/08/23 02:13:46 固定
1001 2012 年 8 月 23 日 22:34:37 テスト準備完了
1001 2012 年 8 月 24 日 12:34:43 保留中
1001 2012/08/24 19:13:39 再テスト
1001 2012/08/25 22:13:40 再開
1001 2012/08/26 10:03:41 再テスト
1001 2012/08/27 11:13:42 クローズ
上記の形式は、私の「ソース」データです。そのような欠陥が何百もあるでしょう。ご覧のとおり、上記のログの日付とステータスはすべて 1 つの Defect_ID (1001) に属しています。私の実際の作業は、ステータス間の時間差を計算するのに役立つ形式で上記のデータを新しいシートにコピーすることです。注意点として、オープン、保留中、レビュー、テスト準備完了、修正済み、再テスト、再オープン、クローズの 8 つの欠陥ステータスがあります。また、これらの欠陥ステータスは、1 つの欠陥で複数回発生する可能性があります (上記の例に示すように、「 Pending' は 2 回発生しますが、open と closed は 1 回しか発生しません)。同様に、ステータスが欠陥に対して最大 6 回繰り返される可能性があります。そのため、ログの日付が対応するステータスに適合する、次のような出力が必要です。
*Defect_ID* オープン Pending1 Pending2...Pending6 Fixed1...Fixed6 TestReady1..Testready6 Review1..Review6 Retest1..Retest6 REopen1..REopen6 クローズ
写真の掲載方法を教えてください。もしそうなら、VBA を介して出力がどの程度正確に必要かを示すことができます。私の他の質問を参照してください:「EXCEL VBA を使用して各値の新しい列を作成することにより、ID に一致する 1 つの列から新しいシートに値をコピーする」、つまり、必要なのは、ステータスごとに新しい列を追加する必要があるということです。繰り返す。すべての値が 1 つの行になるようにします。