ID非公開

2021/2/21 12:31

33回答

Excelの質問です。

画像

Excel | Visual Basic105閲覧xmlns="http://www.w3.org/2000/svg">500

ベストアンサー

1

1人がナイス!しています

ID非公開

質問者

2021/2/22 8:56

データまで添付して下さいましてありがとうございます。 関数の工程も解説してくださっていて、大変わかりやすかったです。 こちらを参考にして、実務の管理表に反映できそうです。 ほかの方の回答も大変参考になり皆様をBAにしたいくらいですが、 最初にご回答いただき添付もつけてくださいましたlgk********様にさせていただきます。

その他の回答(2件)

1

商品名と出荷先を繋げる必要があるため、式が長くなりますが、 出荷予定表シートの、 A5セルに、 ①=IFERROR(INDEX(工程表!$A:$A,INT(1/LARGE(INDEX((工程表!$B$5:$D$20=INDEX(A$3:A3,(INT(ROW(6:6)/6)-1)*6+1))/(ROW(工程表!$5:$20)+COLUMN(工程表!$B:$D)/10^4),),MOD(ROW(6:6),6)+1)))&"-"&INDEX(工程表!$4:$4,MOD(1/LARGE(INDEX((工程表!$B$5:$D$20=INDEX(A$3:A3,(INT(ROW(6:6)/6)-1)*6+1))/(ROW(工程表!$5:$20)+COLUMN(工程表!$B:$D)/10^4),),MOD(ROW(6:6),6)+1),1)*10^4),"") の式を入れ、 ②A5セルを、A8セルまで下にオートフィルし、 ③さらに、A5:A8の範囲を選択して、F列まで右にオートフィルし、 ④最後に、A5:F8の範囲を「コピー」し、A11,A17,A23,…へと「貼り付け」 していく、 でどうでしょうか? なお、工程表シートのデータが最大300行目まであるときは、式の中の「20」を全て「300」に変更して下さい。

画像

1人がナイス!しています

ID非公開

質問者

2021/2/22 8:56

回答ありがとうございます。 こんなに複雑な関数を作って頂けるなんて感動しました。 予定表内で関数が完結しているのもうれしいです。 知識不足なので、すぐに内容が理解できなさそうですが数式を順番に整理して今後の参考にさせていただきます。 ありがとうございました。

1

工程表についてですが、出荷先ごとに列を分ける必要はありません。日付ごとに揃えているわけでもないので日付の管理もしづらいですし一列にまとめましょう。日付は日付列を新たに追加して入力しましょう。 ここまで整理できましたら工程表をテーブルに変換しましょう。 以下、回答ではこのテーブルを工程表と名付けます。 商品と出荷先が一行にあれば工程表に管理番号列も追加できます。 =[@商品]&"-"&[@出荷先] これで管理番号が取得できました。 出荷予定表上の表示についてですが工程表に出荷予定表表示用の列を追加します。 =TEXTJOIN(CHAR(10),,INDEX(REPT([管理番号],[出荷日]=[@出荷日]),,)) 添付画像がもう一枚あるので回答が続きます。

画像

1人がナイス!しています

出荷予定表ですが、管理番号を表示させるセルは一つにします。書式設定の配置を「折り返して全体を表示する」にチェックを入れておきます。 各セルに数式を入力して完了です。 =IFERROR(INDEX(工程表[出荷予定表表示],MATCH(H10,工程表[出荷日],0),),"") ※H10は出荷予定表の各日付を参照してください。

画像