掲載ファイルは、プログラムでEドライブから開きますから
どのファイルも、Eドライブに左側の名前で保存してください。
プログラムを変更すれば、他のドライブに保存可能です。
掲載参考 EXCEL ファイルダウンロード
1. 仕入部品進捗集計.xlsm
2. 加工部品注文データベース2.xlsm   
3. 購入部品注文データベース2.xlsm
4. 材料注文データベース2.xlsm
変数のBRは、行の位置を示していて、最初の行は8行目である。その位置がBR1である。
BR2はその下の行でBR+1になる。その下はBR3でBR+2になる。
各部品は、メーカーと納期と仕入先の3行で出来ているので、変数BRが基準になる。
1ページ目の最終行は、40行目だから For で i が41になった時にBRを50に変更することで
次のページの先頭に移動している。何ページになるのかわからないので、多めに設定している。


このボタンを押すと、表が印刷される。
[購入印刷1]マクロ


For Next で、データのあるページだけ印刷される。
製番に対する、購入部品の手配リストが表示される。入荷済には丸印が付き、未入荷にはない。
[購入部品進捗]フォーム内マクロ


[購入製番抽出]マクロ


[ソート]マクロ


[購入部品入荷状況表記入]マクロ


[製番]を入力して[抽出]ボタンを押す。
[抽出]ボタンマクロ

[購入部品進捗]フォームが開く
メニュー画面の購入部品抽出ボタン


加工部品と購入部品は、同じ抽出方法を取っている。
違うところは、加工部品は材料を手配して、別の外注先で加工する場合があるので、加工と材料の
結合と言うシートで、同じ製番のものを分類しているが、購入部品にはその部分がない。


購入部品のこのボタンを押すと、購入部品表シートに移動する。
[加工と材料の結合]シートでは、3か所の部品に[入荷印]ばないのが分かる。

[ソート]マクロ
この時に[材料注文]シートを見てみると、
データには、[入荷]の項目に丸印が付いているので納期遅れではない。

[加工と材料の結合]マクロ


[材料製番抽出]マクロ


テキストボックスに入力された製番が、[納期遅れ]シートのC3に記入される。

[加工製番抽出]マクロ
[加工部品進捗]フォーム内マクロ
[抽出]ボタンを押すと、CB1_Click マクロが実行される。
[抽出]ボタンマクロ
  メニュー画面で、このボタンを押すと、[加工部品表]シートに移動する。
(加工部品シート)


[抽出]ボタンを押すと、[加工部品進捗]フォームが表示される。



テキストボックスに、製番を入力して[抽出]ボタンを押す。



入力した製番の材料と加工部品が、部品ごとに工程順に表示される。
入荷済の工程には丸印が付いて、未入荷には丸印がない。この表によって製番ごとの手配部品と
入荷の、今日現在の進捗状況が把握できる。[製品納期]と今日現在の未入荷部品の状況で、今後の
納期遅れの対処方法を考えなければならない。
[加工と材料の結合]シートでは、3箇所の部分に[入荷印]が無いのが分かる。

[ソート2]マクロ





この時に[材料注文]シートを見てみると
データには、[入荷]の項目に丸印が付いているので納期遅れではない。

[加工と材料の結合2]マクロ


[材料製番抽出2]マクロ


テキストボックスに入力された、製番が[納期遅れ]シートのC3に記入される。

[加工製番抽出2]マクロ
[納期遅延抽出]フォーム内マクロ
[抽出]ボタンを押すと、CB1_Click マクロが実行される。
[未入荷抽出]ボタンマクロ
製番で発注している部品のうち、納期遅れの部品だけが抽出される。これは、図の右側の[入荷]に
丸印の無いのが分かる。これは、部品が入荷すると注文データベースの入荷列に丸印を付けるので
付いていないのは未入荷の印である。データベースから、納期と印で判別することが可能である。
実際には、遅れている部品を見つけても遅いので、遅れる前に納期で抽出して管理する事が望ましい。
※尚、[指定日抽出]では指定した製番で、材料と加工部品では発注納期が違うので、ここに
 材料が表示されることはない。材料の方が、先の納期で発注されているはずだから。


メニュー画面で、このボタンを押すと、[納期遅れ]シートに移動する。

(納期遅れシート)


[未入荷抽出]ボタンを押すと、[納期遅延一覧作成]フォームが表示される。




テキストボックスに、製番を入力して[抽出]ボタンを押す。
フォームが[加工と材料の結合]シートのデータの、品番を昇順に並べて、仕入先コード番号で昇順に
並べている。テキストボックス入力で製番を入力しなかった為に、すべての製番が抽出された場合は、
その結果を製番で昇順に並べる。

(加工と材料の結合シート)
[ソート4]マクロ

材料注文データベースの項目フィールドと、加工部品注文データベースの項目フィールドは、
データの並びが違うので、[材料注文]シートに一旦置いたデータを[加工と材料の結合]シートの
加工部品と合致する行にコピーしている。

(材料注文シート)
加工部品の場合は、加工と材料が別々の外注先に注文されている場合と、材料込みで加工する
外注先とがある。そのために、材料が注文されている場合を想定して、材料注文データベース
からも製番と日付で抽出する。その結果で抽出された行を[材料注文]シートに張り付けしている。

[加工と材料の結合3]マクロ
Eドライブの加工部品注文データベース2.xlsmのデータを、製番、日付でフィルター抽出して
 FCount=ActiveSheets.Range("B5").CurrentRegion.Columns(2) _
     .SpecialCells(xlCellTypeVisible).Cells.Count − 1
フィルター結果の、B5から下をカウントして、その値から 1 をマイナスして、その値を
FCount に代入する。FCount には抽出された行数が入る。
抽出結果が 0 ならデータベースと閉じて終了する。
抽出結果に行数があれば、その行をコピーして[加工と材料の結合]シートに貼り付ける。

[材料製番抽出3]マクロ
[指定納期抽出]フォーム内マクロ
[抽出]ボタンを押すと、CB1_Click マクロが実行される。


テキストボックスに入力された、日付と製番が[指定日抽出]シートのC3からE3に記入される。
製番の入力がある場合には、製番と日付で抽出され、製番がない場合には、すべての製番を対象に
日付で抽出される。すべての製番の、日付に対する入荷状況を知りたい場合には、有効である。

[加工製番抽出3]マクロ

[指定納期抽出]ボタンマクロ
指定日の指定製番で、発注している部品が抽出される。R列に入荷状況の丸印がある。
印のないのは、未入荷である。
※特定製番のどの部品が入荷していて、どの部品が未入荷なのかが一目でわかる。
 部品納期の日にこれを見て、未入荷の部品があるのを発見しても、納期には間に合わないので
 納期の前に確認するのが望ましい。
テキストボックスに、注文納期と製番を入力して[抽出]ボタンを押す。
[指定納期抽出]ボタンを押すと、[指定納期抽出]フォームが表示される。


このボタンを押すと、[指定日抽出]シートに移動する。

(指定日抽出シート)

●メニュー画面




部品を外注などに発注すると、その入荷状況を把握しなければならない。
加工部品は一次加工や二次加工など、外注先から別の外注先に部品が移動して行く場合もある。
一つの外注先が複数の工程を担当して、部品を完成品として納入する場合もある。
どの場合でも、社内から発注する場合は注文書が発行される。そして一次加工でも二次加工でも、
その加工先がその工程を完成すると、部品と共に納品書が社内に納入される。
納入された納品書は、事務処理でPCに入力されてデータベースに記入される。
それが、加工部品と購入部品の注文データベースである。購入部品は市販されている部品で、
多くの場合は仕入れただけでそのまま使用できる。どちらの部品も、前述の構造になっていれば、
注文データベースを見れば、入荷したものには入荷印があるので、それを集計するだけで入荷の
進捗状況が分かる。
この進捗集計システムの現状把握方法は次の通りである。
1.納期を指定して、未入荷部品を抽出する。
2.製番を指定して、未入荷部品を抽出する。
3.製番を指定して、入荷の進捗状況を表形式に表示する。
 
実践コース
仕入発注部品の入荷状況進捗を把握するシステム。


実際に使っているシステムの内容で解説
  EXCEL VBA 講座