製品マスタ「成形課」

製品マスタの成形課情報画面です。基本情報の成形課ボタンから起動し、この図番の成形条件・金型情報・各種成形パラメータを参照・編集できます。成形課担当者(権限=3)と管理者(権限=2)が編集可能です。

成形課画面の構成

基本情報の成形課ボタンから起動します。成形条件の参照・編集・金型洗浄記録・仕様書Excel出力をこの画面から一括して操作できます。

製品マスタ成形課タブ フォームビュー(管理者)

非管理者ログイン時のフッターのボタン

非管理者ログイン時は新規登録・編集・金型マスタ登録・金型洗浄記録・仕様書Excel出力ボタンが使用不可になります。

画面の概要

項目 内容
図番 選択行の図番を表示
取引先 取引先コードと取引先名を表示
品名 製品の品名を表示
単価 売値を表示(小数点以下2桁)
重要事項 図番に対する重要事項を表示
備考 図番に対する備考を表示
登録日 製品マスタへの登録日を表示
タグ風ボタン 基本情報〜生産管理を切り替え。成形課が選択中の状態で表示
取数 金型の取数を表示
金型保管 金型保管場所を表示
金型メーカー 金型メーカーを表示
金型刻印 金型刻印を表示
2次加硫条件〜製品重量 成形条件の各フィールドを表示
バンプ条件1〜5 バンプ条件を表示
注意事項 成形時の注意事項を表示
成形備考 成形に関する備考を表示
成形情報登録日 成形情報の登録日を表示
同金型で成形図番 同じ金型を使用している他図番の一覧サブフォームを表示
事象履歴 事象履歴のサブフォームを表示
新規登録ボタン 新規登録フォームを開く。管理者・成形課担当のみ使用可能
編集ボタン 編集フォームを開く。管理者・成形課担当のみ使用可能
事象履歴登録ボタン 事象履歴の登録フォームを開く
金型マスタ登録ボタン 現在使用不可(建て付け検討中)
金型洗浄記録ボタン 金型洗浄記録フォームを開く。管理者・成形課担当のみ使用可能
成形日報履歴ボタン 成形日報履歴ページへ遷移
仕様書Excel出力ボタン 成形作業仕様書をExcelファイルに出力
閉じるボタン フォームを閉じる

デザインビューで見る仕組み

フォームの構造とプロパティ設定を確認します。

製品マスタ成形課タブ デザインビュー

デザインビューの概要

項目 設定内容
フォーム名 F11製品成形
レコードソース 空欄(非連結フォーム)
ヘッダー部 図番ID・親図番ID・図番・取引先・品名・単価・重要事項・備考・登録日を配置
タグ風ボタン行 基本情報〜生産管理の8ボタンを横並びで配置(基本情報フォームと同一位置)
詳細部左 取数・金型情報・成形条件フィールド群を配置
詳細部中央 バンプ条件・洗浄サイクル・後工程関連フィールド・注意事項・成形備考を配置
詳細部右 同金型で成形図番サブフォーム・事象履歴サブフォームを配置
フォームフッター 新規登録・編集・事象履歴登録・金型マスタ登録・金型洗浄記録・成形日報履歴・仕様書Excel出力・閉じるボタンを配置

各コントロールの設定

編集ボタン

成形課の情報を編集するフォームを開きます。管理者(権限=2)と成形課担当(権限=3)のみ使用可能です。編集開くマクロの冒頭で取数のNullチェックを行い、取数が未入力の場合は警告メッセージを表示します。取数は「金型あり=成形課データ確定」の判断材料のため、未入力の場合は新規登録が必要な状態の可能性があることを促します。ただし警告後も編集フォームは開くため、仮登録状態でのデータ入力も可能です。

成形課編集フォーム

成形課編集ポップアップ フォームビュー 

黒色系フォームは編集中のサインです。成形条件の全フィールドをDLookupでT11製品成形から転写した状態で起動します。

成形課編集ポップアップ デザインビュー

値リストで担当者が自由に入力できる設計
成形課編集フォームの各コンボボックスは値リスト方式を採用しています。テーブル参照型のコンボボックスでは管理者がリストを追加・管理しなければ担当者が新しい値を入力できません。値リスト方式にすることで担当者がリストにない値を直接入力でき、管理者への依頼なしに対応できます。

製造現場では金型メーカー・使用プレス・後加工方法など、状況に応じて新しい値が必要になることが頻繁にあります。そのたびに管理者にリスト追加を依頼していては現場の運用が滞ります。値リスト方式であれば担当者が自分の判断で入力でき、現場の柔軟な運用を支えます。

取引先コンボボックスだけはT05取引先Mのリスト表示フラグが有効な取引先のみ表示される設計です。大量な取引先から選択する手間を金型メーカーに絞り込んだリスト表示で利便性が向上します。取引先は誤入力が品質・納期管理に直結するため、テーブル参照型で管理された値からのみ選択できるようにしています。用途に応じてテーブル参照型と値リスト型を使い分ける設計です。

金型メーカーコンボボックス (例)成形圧力コンボボックス

サブマクロ:成形編集開く

サブマクロのテキスト表示
サブマクロ:成形編集開く
  If  IsNull([取数])  Then
    メッセージボックス
      メッセージ    取数が表示されていません。まずは新規登録する必要があるかも知れません。仮登録の場合はここから登録してください
      警告音        はい
      メッセージの種類  警告
      メッセージタイトル  未入力
  If 文の最後
  フォームを開く(F11製品成形編集, フォームビュー, , , , 標準)
  値の代入
    アイテム  = [Forms]![F11製品成形編集]![図番ID]
    式        = [Forms]![F00メインメニュー]![図番ID]
  値の代入
    アイテム  = [Forms]![F11製品成形編集]![図番]
    式        = DLookUp("図番","T10製品M","[図番ID]=[Forms]![F11製品成形編集]![図番ID]")
  値の代入([Forms]![F11製品成形編集]![取引先コード], DLookUp("取引先コード","T10製品M","[図番ID]=[Forms]![F11製品成形編集]![図番ID]"))
  値の代入([Forms]![F11製品成形編集]![取数], DLookUp("取数","T11製品成形","[図番ID]=[Forms]![F11製品成形編集]![図番ID]"))
  値の代入([Forms]![F11製品成形編集]![金型保管], DLookUp("金型保管","T11製品成形","[図番ID]=[Forms]![F11製品成形編集]![図番ID]"))
  値の代入([Forms]![F11製品成形編集]![金型メーカー], DLookUp("金型メーカー","T11製品成形","[図番ID]=[Forms]![F11製品成形編集]![図番ID]"))
  値の代入([Forms]![F11製品成形編集]![金型刻印], DLookUp("金型刻印","T11製品成形","[図番ID]=[Forms]![F11製品成形編集]![図番ID]"))
  …(2次加硫条件・成形圧力・収縮率・バンプ条件1〜5・洗浄サイクル・離型剤・バリ仕上げ・後加工・KT挿入・ベース厚み・条件出しプレス・成形時狙い荷重・動画・成形時注意事項・備考・登録日・製品重量・登録者コードまで全フィールドをDLookupで転写)
  マクロの中止
サブマクロの最後

マクロの概要

ステップ 処理 内容
1 If 条件分岐 取数が未入力の場合に警告メッセージを表示(編集フォームは開く)
2 フォームを開く F11製品成形編集をフォームビューで開く
3 値の代入 図番IDをメインメニューから転写
4〜 値の代入 図番・取引先コード・成形条件全フィールドをDLookupでT11製品成形から転写

マクロの設置場所

項目 内容
フォーム F11製品成形
コントロール 編集ボタン
イベント クリック時
呼び出し元 M11製品成形 > サブマクロ:成形編集開く

編集フォームの編集更新ボタン

編集・訂正作業後に編集更新ボタンを押すことで更新クエリが実行されてテーブルデータが更新されます。

サブマクロ:成形編集更新

サブマクロのテキスト表示
サブマクロ:成形編集更新
  If  IsNull([取数])  Then
    メッセージボックス
      メッセージ    取数が入力されていません。最低「取数」だけは登録してください
      警告音        はい
      メッセージの種類  警告
      メッセージタイトル  未入力
    コントロールの移動(取数)
    マクロの中止
  If 文の最後
  警告音
  If  MsgBox("訂正・編集したデータを更新してもよろしいですか?",4+32,"確認")=6  Then
    メッセージの設定(いいえ)
    クエリを開く(Q11製品成形編集更新, データシート, 編集)
    メッセージボックス(訂正・編集したデータを更新しました。, はい, なし, 完了)
    マクロの実行(M10製品.成形表示, , )
    ウィンドウを閉じる(フォーム, F11製品成形編集, 確認)
    再クエリ
      コントロール名
    マクロの中止
  Else
    メッセージボックス(処理を中止します, はい, なし, 中止)
    マクロの中止
  If 文の最後
サブマクロの最後

マクロの概要

ステップ 処理 内容
1 If 条件分岐 取数が未入力の場合に警告メッセージを表示してマクロを中止
2 警告音 確認前に警告音を鳴らす
3 If 条件分岐 確認メッセージで「はい」の場合のみ次の処理を実行
4 クエリを開く Q11製品成形編集更新を実行してT11製品成形を更新
5 メッセージボックス 更新完了メッセージを表示
6 マクロの実行 M10製品.成形表示を実行して最新データを再描画
7 ウィンドウを閉じる F11製品成形編集を確認付きで閉じる
8 再クエリ フォームを更新
9 Else 「いいえ」の場合は中止メッセージを表示

マクロの設置場所

項目 内容
フォーム F11製品成形編集
コントロール 編集更新ボタン
イベント クリック時
呼び出し元 M11製品成形 > サブマクロ:成形編集更新

非連結フォームで最新データを表示する仕組み
成形課フォームは非連結フォームのため、編集・登録などのポップアップを閉じても画面上のデータは自動では更新されません。そこで編集更新マクロの中で マクロの実行(M10製品.成形表示) を呼び出し、T11製品成形の最新データをDLookupで取得して全フィールドを再描画する設計にしています。

連結フォームであれば保存後に自動で画面が更新されますが、成形課のように複数テーブルのデータを1画面に集約する場合は非連結フォームの方が柔軟な設計が可能です。その代わりに「更新後は必ず成形表示マクロを走らせる」というルールを徹底することで、常に最新データを表示できる設計を実現しています。

成形表示マクロは成形課フォームを開くとき(成形開くマクロの末尾)と編集更新後(成形編集更新マクロの末尾)の2か所で呼び出されています。将来的に新規登録フォームや他の更新処理が追加された際も、末尾に マクロの実行(M10製品.成形表示) を追加するだけで最新データ表示が保証されます。

図番IDのメインメニューへの格納と複数PC間の独立した動作については基本情報ページで詳しく解説しています。

関連記事

製品マスタの詳細画面です。製品リストの詳細ボタンから起動し、図番の基本情報を参照できます。成形課・材料課・加工課・印刷課・品証課・営業課・生産管理の各課情報はタグ風ボタンで切り替えて表示します。 基本情報画面の構成 製品リストの詳細[…]

クエリ:Q11製品成形編集更新

成形課の編集更新クエリ(一部抜粋)

クエリの概要

項目 内容
クエリ名 Q11製品成形編集更新
種別 更新クエリ
対象テーブル T11製品成形
抽出条件 [Forms]![F11製品成形編集]![図番ID] で対象レコードを特定

Q11製品成形編集更新 フィールド構成

フィールド レコードの更新 内容
金型刻印 [Forms]![F11製品成形編集]![金型刻印] 金型刻印を更新
金型管理図番 [Forms]![F11製品成形編集]![図番] 金型管理図番を更新
取数 [Forms]![F11製品成形編集]![取数] 取数を更新
仕様書作成日 [Forms]![F11製品成形編集]![仕様書作成日] 仕様書作成日を更新
金型メーカー [Forms]![F11製品成形編集]![金型メーカー] 金型メーカーを更新
金型保管 [Forms]![F11製品成形編集]![金型保管] 金型保管を更新
2次加硫条件 〜 製品重量 [Forms]![F11製品成形編集]![各フィールド] 成形条件全フィールドを更新
登録者コード [Forms]![F11製品成形編集]![登録者コード] 登録者コードを更新
図番ID(抽出条件) [Forms]![F11製品成形編集]![図番ID] 対象レコードの特定に使用

M10製品 サブマクロ:成形表示

成形表示マクロは編集・登録などのポップアップを閉じた後に実行され、T11製品成形の最新データをDLookupで取得して成形課フォームの全フィールドを更新します。非連結フォームは連結フォームのように自動更新されないため、このマクロで明示的に再描画する設計です。編集更新マクロの中でも マクロの実行(M10製品.成形表示) として呼び出されます。(M10製品マクロのサブマクロを流用)

サブマクロのテキスト表示
サブマクロ:成形表示
  値の代入([Forms]![F11製品成形]![図番], DLookUp("図番","T10製品M","[図番ID]=[Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![取引先コード], DLookUp("取引先コード","T10製品M","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![品名], DLookUp("品名","T10製品M","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![単価], DLookUp("単価","T10製品M","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![重要事項], DLookUp("重要事項","T10製品M","[図番ID]= [Forms]![F00メインメニュー]![図番ID]"))
  値の代入([Forms]![F11製品成形]![備考], DLookUp("備考","T10製品M","[図番ID]=[Forms]![F00メインメニュー]![図番ID]"))
  値の代入([Forms]![F11製品成形]![登録日], DLookUp("登録日","T10製品M","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![取数], DLookUp("取数","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![金型保管], DLookUp("金型保管","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID]"))
  値の代入([Forms]![F11製品成形]![金型メーカー], DLookUp("金型メーカー","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID]"))
  値の代入([Forms]![F11製品成形]![金型刻印], DLookUp("金型刻印","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID]"))
  値の代入([Forms]![F11製品成形]![2次加硫条件], DLookUp("[2次加硫条件]","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![成形圧力], DLookUp("[成形圧力]","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![収縮率], DLookUp("収縮率","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![収縮率評価], DLookUp("収縮率評価","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![金型形式], DLookUp("金型形式","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![金型寸法], DLookUp("金型寸法","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID]"))
  値の代入([Forms]![F11製品成形]![取付けピッチ], DLookUp("取付けピッチ","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![使用プレス], DLookUp("使用プレス","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID]"))
  値の代入([Forms]![F11製品成形]![真空有無], DLookUp("真空有無","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![敷ゴム], DLookUp("敷ゴム","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![表面温度上型], DLookUp("表面温度上型","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![表面温度下型], DLookUp("表面温度下型","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![加硫時間], DLookUp("加硫時間","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID]"))
  値の代入([Forms]![F11製品成形]![バンピング条件1], DLookUp("バンピング条件1","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![バンピング条件2], DLookUp("バンピング条件2","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![バンピング条件3], DLookUp("バンピング条件3","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![バンピング条件4], DLookUp("バンピング条件4","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![バンピング条件5], DLookUp("バンピング条件5","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![洗浄サイクル], DLookUp("洗浄サイクル","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![離型剤], DLookUp("離型剤","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID]"))
  値の代入([Forms]![F11製品成形]![離型剤使用頻度], DLookUp("離型剤使用頻度","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![バリ仕上げ], DLookUp("バリ仕上げ","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![治具], DLookUp("治具","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![後加工], DLookUp("後加工","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![KT挿入], DLookUp("KT挿入","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![ベース厚み], DLookUp("ベース厚み","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID]"))
  値の代入([Forms]![F11製品成形]![条件出しプレス], DLookUp("条件出しプレス","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID]"))
  値の代入([Forms]![F11製品成形]![成形時狙い荷重], DLookUp("成形時狙い荷重","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID]"))
  値の代入([Forms]![F11製品成形]![動画], DLookUp("動画","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID]"))
  値の代入([Forms]![F11製品成形]![成形時注意事項], DLookUp("成形時注意事項","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![備考a], DLookUp("備考","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID] "))
  値の代入([Forms]![F11製品成形]![登録日a], DLookUp("仕様書作成日","T11製品成形","[図番ID]=[Forms]![F00メインメニュー]![図番ID]"))
  値の代入([Forms]![F11製品成形]![製品重量], DLookUp("製品重量","T11製品成形","[図番ID]= [Forms]![F00メインメニュー]![図番ID]"))
  マクロの中止
サブマクロの最後

マクロの概要

処理 内容
値の代入(T10製品M) 図番・取引先コード・品名・単価・重要事項・備考・登録日をT10製品MからDLookupで転写
値の代入(T11製品成形) 取数・金型情報・成形条件全フィールドをT11製品成形からDLookupで転写

マクロの設置場所

項目 内容
マクロ M10製品
サブマクロ 成形表示
呼び出し元 成形編集更新マクロ・成形開くマクロ内の「マクロの実行」から呼び出し

金型洗浄記録ボタン

金型洗浄の記録を登録するフォームを開きます。管理者(権限=2)と成形課担当(権限=3)のみ使用可能です。洗浄記録はT18金型洗浄テーブルに追加されると同時に、T10製品履歴(事象履歴)にも自動追加されます。

金型洗浄記録 ポップアップフォームビュー

図番・手配番号・洗浄日・洗浄開始時間・洗浄サイクル・洗浄・洗浄者選択・洗浄者・備考を入力します。フォーム下部に過去の金型洗浄履歴サブフォームが埋め込まれており、過去の洗浄記録を確認しながら登録できます。

手番なしボタン 手配番号が存在しない場合に「手番なし」ボタンを押すと手配番号欄に「手配番号なし」と転記されます。

洗浄者の複数人登録 :洗浄者は1人とは限らないため、洗浄者選択コンボボックスで担当者を選び追加ボタンを押すたびに洗浄者欄に「・」区切りで追加していく方式です。1人目は直接転写、2人目以降は既存の洗浄者名に「・氏名」を連結します。

金型洗浄記録 ポップアップフォームデザインビュー

金型洗浄登録のフォームが開くアクション

製品マスタ成形課フォームのフッターに配置してある金型洗浄登録ボタンをクリックすると金型洗浄登録ポップアップフォームが開きます。当該金型の洗浄記録を登録するフォームです。

サブマクロ:金型洗浄

サブマクロのテキスト表示
サブマクロ:金型洗浄
  フォームを開く(F11製品成形金型洗浄, フォームビュー, , , , 標準)
  値の代入
    アイテム  = [Forms]![F11製品成形金型洗浄]![図番ID]
    式        = [Forms]![F11製品成形]![図番ID]
  値の代入
    アイテム  = [Forms]![F11製品成形金型洗浄]![ID]
    式        = DLookUp("ID","T11製品成形","[図番ID]=[Forms]![F11製品成形]![図番ID]")
  再クエリ
    コントロール名
  マクロの中止
サブマクロの最後

マクロの概要

ステップ 処理 内容
1 フォームを開く F11製品成形金型洗浄をフォームビューで開く
2 値の代入 図番IDを成形課フォームから転写
3 値の代入 T11製品成形のIDをDLookupで取得して転写
4 再クエリ フォームを更新

マクロの設置場所

項目 内容
フォーム F11製品成形
コントロール 金型洗浄記録ボタン
イベント クリック時
呼び出し元 M11製品成形 > サブマクロ:金型洗浄

洗浄者を追加ボタンで追加するアクション

洗浄者を複数人でも登録できる仕組みです。

サブマクロ:金型洗浄追加(洗浄者複数追加)

サブマクロのテキスト表示
サブマクロ:金型洗浄追加
  If  [判断]=1  Then
    値の代入
      アイテム  = [洗浄者]
      式        = [従業員]
    値の代入
      アイテム  = [判断]
      式        = [判断]+1
    マクロの中止
  Else
    値の代入
      アイテム  = [洗浄者]
      式        = [洗浄者] & "・" & [従業員]
    マクロの中止
  If 文の最後
サブマクロの最後

マクロの概要

ステップ 処理 内容
1 If 条件分岐 判断=1(1人目)の場合は洗浄者欄に直接転写し判断を+1
2 Else 2人目以降は既存の洗浄者名に「・氏名」を連結して追加

マクロの設置場所

項目 内容
フォーム F11製品成形金型洗浄
コントロール 追加ボタン
イベント クリック時
呼び出し元 M11製品成形 > サブマクロ:金型洗浄追加

サブマクロ:金型洗浄登録

フッターに配置した登録ボタンでフォーム上に入力したデータがT18金型洗浄テーブルとT10製品履歴テーブルに格納されます。

サブマクロのテキスト表示
サブマクロ:金型洗浄登録
  If  IsNull([図番])  Then
    メッセージボックス
      メッセージ    図番が登録されていません
      警告音        はい
      メッセージの種類  警告
      メッセージタイトル  未登録
    コントロールの移動(図番ID)
    マクロの中止
  If 文の最後
  If  IsNull([手配番号])  Then
    メッセージボックス
      メッセージ    手配番号(作業指示)が登録されていません
      警告音        はい
      メッセージの種類  警告
      メッセージタイトル  未登録
    コントロールの移動(手配番号)
    マクロの中止
  If 文の最後
  If  IsNull([洗浄日])  Then  ・・・(以下略)
  If  IsNull([開始時間])  Then  ・・・
  If  IsNull([洗浄サイクル])  Then  ・・・
  If  IsNull([洗浄])  Then  ・・・
  If  IsNull([洗浄者])  Then  ・・・
  警告音
  If  MsgBox("金型洗浄記録を登録してよろしいですか?",4+32,"確認")=6  Then
    メッセージの設定(いいえ)
    クエリを開く(Q11製品成形金型洗浄追加, データシート, 編集)
    クエリを開く(Q11製品成形金型洗浄履歴追加, データシート, 編集)
    メッセージボックス(金型洗浄記録を登録しました, はい, なし, 登録済)
    ウィンドウを閉じる(フォーム, F11製品成形金型洗浄, 確認)
    再クエリ()
    マクロの中止
  Else
    メッセージボックス(処理を中止します, はい, なし, 中止)
    マクロの中止
  If 文の最後
サブマクロの最後

マクロの概要

ステップ 処理 内容
1〜7 If 条件分岐 図番・手配番号・洗浄日・開始時間・洗浄サイクル・洗浄・洗浄者の未入力チェック
8 警告音 確認前に警告音を鳴らす
9 If 条件分岐 確認メッセージで「はい」の場合のみ次の処理を実行
10 クエリを開く Q11製品成形金型洗浄追加でT18金型洗浄に追加
11 クエリを開く Q11製品成形金型洗浄履歴追加でT10製品履歴(事象履歴)にも自動追加
12 メッセージボックス 登録完了メッセージを表示
13 ウィンドウを閉じる F11製品成形金型洗浄を確認付きで閉じる
14 Else 「いいえ」の場合は中止メッセージを表示

マクロの設置場所

項目 内容
フォーム F11製品成形金型洗浄
コントロール 登録ボタン
イベント クリック時
呼び出し元 M11製品成形 > サブマクロ:金型洗浄登録

クエリ:Q11製品成形金型洗浄追加

追加クエリーでT18金型洗浄テーブルにデータを追加

金型洗浄追加クエリ デザインビュー

クエリの概要

項目 内容
クエリ名 Q11製品成形金型洗浄追加
種別 追加クエリ
追加先テーブル T18金型洗浄

Q11製品成形金型洗浄追加 フィールド構成

フィールド レコードの追加 内容
[Forms]![F11製品成形金型洗浄]![図番ID] 図番ID 図番IDを追加
[Forms]![F11製品成形金型洗浄]![図番] 図番 図番を追加
[Forms]![F11製品成形金型洗浄]![手配番号] 手配番号 手配番号を追加
[Forms]![F11製品成形金型洗浄]![洗浄日] 洗浄日 洗浄日を追加
[Forms]![F11製品成形金型洗浄]![開始時間] 開始時間 洗浄開始時間を追加
[Forms]![F11製品成形金型洗浄]![洗浄] 洗浄 洗浄方法を追加
[Forms]![F11製品成形金型洗浄]![洗浄サイクル] 洗浄サイクル 洗浄サイクルを追加
[Forms]![F11製品成形金型洗浄]![洗浄者] 洗浄者 洗浄者名を追加
[Forms]![F11製品成形金型洗浄]![備考] 備考 備考を追加
[Forms]![F11製品成形金型洗浄]![親図番ID] 親図番ID 親図番IDを追加

クエリ:Q11製品成形金型洗浄履歴追加

金型の洗浄記録も図番IDに連動するT10製品履歴(事象履歴)テーブルに追加します。

金型洗浄事象履歴追加クエリ デザインビュー

クエリの概要

項目 内容
クエリ名 Q11製品成形金型洗浄履歴追加
種別 追加クエリ
追加先テーブル T10製品履歴(事象履歴)

Q11製品成形金型洗浄履歴追加 フィールド構成

フィールド レコードの追加 内容
[Forms]![F11製品成形金型洗浄]![図番ID] 図番ID 図番IDを追加
[Forms]![F11製品成形金型洗浄]![図番] 図番 図番を追加
[Forms]![F11製品成形金型洗浄]![洗浄日] 登録日 洗浄日を登録日として追加
[Forms]![F11製品成形金型洗浄]![登録者コード] 登録者コード 登録者コードを追加
“成形課” 部署分類 部署分類を「成形課」として固定追加
[Forms]![F11製品成形金型洗浄]![内容] 内容 洗浄内容を追加
[Forms]![F11製品成形金型洗浄]![親図番ID] 親図番ID 親図番IDを追加

金型洗浄で事象履歴を自動登録
金型洗浄記録を登録すると同時に、T10製品履歴(事象履歴)にも自動でレコードが追加されます。登録マクロの中でQ11製品成形金型洗浄追加とQ11製品成形金型洗浄履歴追加の2つのクエリを連続実行することで実現しています。

金型洗浄は製品の品質に直結する重要な作業です。「いつ・誰が・どの金型を・どの方法で洗浄したか」という記録をT18金型洗浄テーブルで管理しながら、同じ内容を事象履歴にも自動追加することで、基本情報画面の事象履歴サブフォームからも洗浄履歴を一目で確認できます。成形課フォームと基本情報フォームのどちらから見ても洗浄記録が残っているため、情報の分散を防ぎます。

金型洗浄記録を登録するたびに事象履歴登録フォームを別途開いて手動で入力する手間が不要になります。ワンアクションで2つのテーブルに記録が残る設計です。

成形日報履歴ボタン

成形日報履歴ページへ遷移します。成形日報履歴は別ページで詳しく解説しています。

◆リンクカード:成形日報履歴(URL未定)

マクロの設置場所

項目 内容
フォーム F11製品成形
コントロール 成形日報履歴ボタン
イベント クリック時
呼び出し元 M11製品成形 > サブマクロ:成形日報履歴

仕様書Excel出力ボタン

成形条件の登録データをExcelにエクスポートして成形作業仕様書を作成します。取数が未入力の場合は出力対象データなしとして処理を中止します。出力先はC:¥Access¥フォルダです。Excelの仕様書テンプレートがエクスポートされたデータを参照して所定のセルに表示する仕組みのため、Access側での登録データとExcel仕様書の2重入力が不要になります。

AccessからExcelへエクスポートして出力した成形仕様書PDF

サブマクロ:成形作業仕様書Excel

サブマクロのテキスト表示
サブマクロ:成形作業仕様書Excel
  If  IsNull([取数])  Then
    メッセージボックス(出力するデータがありません。成形条件を登録してから出力可能になります, はい, 警告, 中止)
    マクロの中止
  If 文の最後
  メッセージの設定
    メッセージの表示  いいえ
  クエリを開く(Q11成形作業仕様書出力追加, データシート, 編集)
  クエリを開く(Q11成形作業仕様書履歴出力追加, データシート, 編集)
  警告音
  If  MsgBox("表示されているデータをExcelに出力します。保管先はC:¥Access¥ です。",4+32,"確認")=6  Then
    スプレッドシートのインポート/エクスポート
      変換の種類          エクスポート
      スプレッドシートの種類  Excel Workbook
      テーブル名          T11成形作業仕様書出力
      ファイル名          C:¥Access¥成形作業仕様書作成データ.xlsx
      フィールド名の設定  いいえ
    スプレッドシートのインポート/エクスポート
      変換の種類          エクスポート
      スプレッドシートの種類  Excel Workbook
      テーブル名          T11成形作業仕様書履歴出力
      ファイル名          C:¥Access¥成形作業仕様書履歴作成データ.xlsx
      フィールド名の設定  いいえ
    メッセージボックス(成形作業仕様書のピボットデータをExcelで作成しました。, はい, なし, 作成済)
    クエリを開く(Q11成形作業仕様書出力削除, データシート, 編集)
    クエリを開く(Q11成形作業仕様書履歴出力削除, データシート, 編集)
    マクロの中止
  Else
    メッセージボックス(処理を中止します, はい, なし, 中止)
    マクロの中止
  If 文の最後
サブマクロの最後

マクロの概要

ステップ 処理 内容
1 If 条件分岐 取数が未入力の場合に警告メッセージを表示してマクロを中止
2 クエリを開く Q11成形作業仕様書出力追加で一時テーブルにデータを書き出し
3 クエリを開く Q11成形作業仕様書履歴出力追加で履歴用一時テーブルにデータを書き出し
4 If 条件分岐 確認メッセージで「はい」の場合のみ次の処理を実行
5 スプレッドシートエクスポート T11成形作業仕様書出力をC:¥Access¥成形作業仕様書作成データ.xlsxにエクスポート
6 スプレッドシートエクスポート T11成形作業仕様書履歴出力をC:¥Access¥成形作業仕様書履歴作成データ.xlsxにエクスポート
7 メッセージボックス 作成完了メッセージを表示
8 クエリを開く Q11成形作業仕様書出力削除で一時テーブルをクリア
9 クエリを開く Q11成形作業仕様書履歴出力削除で履歴用一時テーブルをクリア
10 Else 「いいえ」の場合は中止メッセージを表示

マクロの設置場所

項目 内容
フォーム F11製品成形
コントロール 仕様書Excel出力ボタン
イベント クリック時
呼び出し元 M11製品成形 > サブマクロ:成形作業仕様書Excel

事象履歴登録ボタン

基本情報ページと同じ構成です。サブマクロ・フォーム・クエリの設置場所のみ異なります。

マクロの設置場所

項目 内容
フォーム F11製品成形
コントロール 事象履歴登録ボタン
イベント クリック時
呼び出し元 M10製品 > サブマクロ:履歴登録開く

関連記事

製品マスタの詳細画面です。製品リストの詳細ボタンから起動し、図番の基本情報を参照できます。成形課・材料課・加工課・印刷課・品証課・営業課・生産管理の各課情報はタグ風ボタンで切り替えて表示します。 基本情報画面の構成 製品リストの詳細[…]


閉じるボタン

M99共通 サブマクロ:閉じる

マクロの設置場所

項目 内容
フォーム F11製品成形
コントロール 閉じるボタン
イベント クリック時
呼び出し元 M99共通 > サブマクロ:閉じる

関連記事

フォームごとに同じ処理のマクロを個別に作ると、マクロの数が際限なく増えて管理が大変になります。M99共通マクロはどのフォームでも使い回せる処理をサブマクロとして一箇所に集約したものです。コントロール名を統一しておくことでフォームを問わず同じ[…]

サブフォームの構成

成形課フォームには成形に必要な条件と同金型で成形図番・事象履歴の2つのサブフォームが埋め込まれています。図番IDをキーに各テーブル・クエリと連動し、該当図番に紐づく情報を一画面で参照できます。

同金型で成形図番サブフォーム(F11製品成形金型マスタサブ)

同じ金型を使用している他の図番を一覧表示するサブフォームです。親図番IDをキーにT11製品成形を検索し、取数が登録済み(Is Not Null)のレコードのみ表示します。同じ金型を使っている図番が一目でわかるため、金型トラブル発生時や金型移動時の影響範囲の確認に役立ちます。

同金型で成形図番サブフォーム デザインビュー

クエリ:Q11製品成形金型マスタサブ

製品金型マスタサブ クエリデザインビュー

クエリの概要

項目 内容
クエリ名 Q11製品成形金型マスタサブ
種別 選択クエリ
テーブル T11製品成形、T05取引先M
結合 T11製品成形.取引先コード = T05取引先M.取引先コード
抽出条件 取数 Is Not Null(金型登録済みのレコードのみ)
抽出条件 親図番ID = [Forms]![F11製品成形]![親図番ID]

Q11製品成形金型マスタサブ フィールド構成

フィールド テーブル 並べ替え 内容
金型管理図番 T11製品成形 金型管理図番を表示
取数 T11製品成形 取数を表示
金型保管 T11製品成形 金型保管場所を表示
略称 T05取引先M 取引先略称を表示
金型刻印 T11製品成形 金型刻印を表示
ID T11製品成形
登録日 T11製品成形 降順 登録日の新しい順に表示
親図番ID T11製品成形 親図番IDで絞り込みに使用
図番ID T11製品成形

主なプロパティ設定

プロパティ 設定値
フォーム名 F11製品成形金型マスタサブ
レコードソース Q11製品成形金型マスタサブ
移動ボタン いいえ
追加の許可 いいえ
編集ロック はい

事象履歴(F11製品成形基本履歴サブ)

基本情報ページの事象履歴サブフォームと同じ構成です。フォーム名・レコードソース名のみ異なります。編集ボタン・事象履歴登録ボタンの動作も基本情報ページと同じです。

主なプロパティ設定

プロパティ 設定値
フォーム名 F11製品成形基本履歴サブ
レコードソース Q10製品基本履歴サブ
移動ボタン いいえ
追加の許可 いいえ

製品マスタの詳細画面です。製品リストの詳細ボタンから起動し、図番の基本情報を参照できます。成形課・材料課・加工課・印刷課・品証課・営業課・生産管理の各課情報はタグ風ボタンで切り替えて表示します。 基本情報画面の構成 製品リストの詳細[…]


材料課タグフォームについて

材料課はT11製品成形(成形課と同一テーブル)を使用しています。フォームレイアウト・マクロ構成・クエリ構成はすべて成形課と同じ設計です。

製品マスタ材料課タグ フォームビュー


リンクテーブル:製品マスタ「テーブル設計」T10製品M構造

まとめ

成形課は取数・金型情報・成形条件・バンプ条件など成形に関わる全情報をT11製品成形テーブルに集約し、非連結フォームと成形表示マクロの組み合わせで常に最新データを表示する設計が核になっています。金型洗浄記録の自動事象履歴登録・値リスト方式のコンボボックス・ExcelへのデータエクスポートによるAccess-Excel連携など、製造現場の実務に即した設計が随所に盛り込まれています。

 

本サイトではマクロを用いた構築手順を中心に紹介していますが、決してマクロを唯一の正解として推奨しているわけではありません。VBAが扱える環境であれば、より多彩で柔軟なプログラムが組めるVBAでの構築をむしろ推奨したいと考えています。

ここでマクロという選択肢を提示しているのは、VBAにハードルを感じている方への「もう一つの入り口」として、また将来的な後継者への引き継ぎ負荷を抑えるという実務上のメリットを考慮してのことです。設計の考え方の一つとして、状況に合わせて活用してください。