質問ぶりからこの問題に対処するには、エクセルをわかった人に聞くしかないだろう。
特に、エクセル関数!で、条件を付けて、シートのデータを抜き出すのは、エクセルの課題の中で複雑な課題だ。
この質問コーナーは、文章と関数式によって回答せざるをえない、手段と方法論の制約があり、対話や講義を聞くに比べ、相当劣った手法だ。
何か良い回答や説明方法がないか、と期待する前に質問者が、時間をかけてエクセル(特にVBAやアクセスなどを)勉強するしかない。時間がない、金がない、人がないと言われても、回答者はどうしようもない問題。
仕事に関することのようだから、専門の人に頼むべきだ。社内には、あるいは委託先システム業者には、専門家もいるだろう。
ーー
説教するだけではと思って、好き嫌いはあろうが、1つの方法を挙げておく。Imogasi方式と自称。
ーー
Sheet1 元データ これぐらい質問者が、文章でなく、テキスト画面か画像添付で例示すべきだ。想像で作っているので、欠点があるかも。
A1:F7
日付 パン詰めNO 車名 フレーム 納車先 判定サイン
2018/7/27 1 T 12 AA社
2018/7/27 N 23 AB社 1
2018/7/27 T 24 AC社 2
2018/7/27 3 I 23 AD社
2018/7/27 H 56 AB社 3
2018/7/27 6 T 12 AA社
判定サイン列のF2の式は
=IF(B2="",MAX($F$1:F1)+1,"")
条件に該当する」行に上行から順に連番を振っている。
ーー
Sheet2に行って
全列!全項目データを出す場合は
A2に
=INDEX(Sheet1!$A$1:$F$10,MATCH(ROW()-1,Sheet1!$F$1:$F$10,0),COLUMN())と入れて、右列方向に式を複写。
A2行の式を下方向に式複写。
結果
Shee2に A1:G4
日付 パン詰めNO 車名 フレーム 納車先 条件該当と順番サイン
2018/7/27 0 N 23 AB社 1
2018/7/27 0 T 24 AC社 2
2018/7/27 0 H 56 AB社 3
第1行はSheet1から複写するか手で入力する。
A列は、日付なので、整数が出るが、日付に設定すること。
望みの列を選択するなら、式のCOLUMN()の部分を列番号数字で指定する。
複写は効果が出ないので、各列手動指定となり、行の複写だけが関数利用の効果を出せる。
Sheet3のA2
=INDEX(Sheet1!$A$1:$F$10,MATCH(ROW()-1,Sheet1!$F$1:$F$10,0),1)
B2の式
=INDEX(Sheet1!$A$1:$F$10,MATCH(ROW()-1,Sheet1!$F$1:$F$10,0),3)
C2の式
=INDEX(Sheet1!$A$1:$F$10,MATCH(ROW()-1,Sheet1!$F$1:$F$10,0),5)
これでSheet3に出る列が選択されてたことが判る。