📐 T3_Uty3PL積付と保管規模.vb - 詳細説明

📋 概要

このファイルは、パレット(PL)への最適な積付パターンを計算し、保管に必要なパレット数を算出する高度なユーティリティソフトウェアです。ケースのサイズとパレットの有効スペースから、最適な積付方法を自動計算します。

主な用途:
パレット積付とは: 物流において、荷物(ケース)をパレット上に効率的に配置する作業。積付パターンによって、輸送効率や保管効率が大きく変わります。

🔧 依存関係

Imports System.Runtime.InteropServices
Imports Microsoft.Office.Interop
Imports OfficeOpenXml

使用技術:

🎯 主要機能

1. パレット積付計算

2. 積付パターン

3. 保管パレット数計算

4. 視覚化機能

📦 積付パターンの詳細

P1パターン(縦置き)

配置方法:
ケースの長辺(長さ)をパレット幅方向、短辺(幅)を奥行方向に配置

計算式:
幅方向個数 = INT(有効幅 / ケース長さ)
奥行方向個数 = INT(有効奥行 / ケース幅)
平面数 = 幅方向個数 × 奥行方向個数

P2パターン(横置き)

配置方法:
ケースの短辺(幅)をパレット幅方向、長辺(長さ)を奥行方向に配置

計算式:
幅方向個数 = INT(有効幅 / ケース幅)
奥行方向個数 = INT(有効奥行 / ケース長さ)
平面数 = 幅方向個数 × 奥行方向個数

P1&P2パターン(組み合わせ1)

配置方法:
P1パターンとP2パターンを交互に配置
P1を基準に、残りスペースをP2で埋める

特徴:
デッドスペースを最小化し、充填率を向上

P2&P1パターン(組み合わせ2)

配置方法:
P2パターンとP1パターンを交互に配置
P2を基準に、残りスペースをP1で埋める

特徴:
P1&P2とは逆の配置で、別の最適化を実現

🔍 主要メソッド詳細

1. フォームロード処理

Private Sub パレット積付計算From_Load(sender As Object, e As EventArgs)

初期化処理:

  1. 使用期限と著作権の表示
  2. 必要ファイルの存在確認
  3. Excelファイルパスの設定
    MyExcel1 = Dat保存Path & "\PL積付計算\PL積付計算.xlsx"
    MyE1_Sheet1 = "PL仕様と荷姿"
    MyE1_Sheet2 = "ケース数と寸法"
  4. PL情報の読み込み
  5. ComboBoxへの項目書き込み
  6. ケース情報の読み込み
  7. PL積付計算の実行

2. PL積付計算実行

Private Sub PL積付計算実行()

処理フロー:

  1. ケース計算済フラグの初期化
  2. PL積付計算の実行
  3. 積載計算結果Gvの表示設定
    • 奇数行の背景色を黄緑色(GreenYellow)に設定
    • 偶数行は水色(Aquamarine)に設定
    • 視覚的なフィードバック
  4. 全PL集計の実行
背景色の交互変更: 計算実行のたびに背景色が切り替わり、再計算されたことを視覚的に確認できます。

3. PL積付計算

Private Sub PL積付計算()

計算ステップ:

  1. P1パターン計算
    • 幅方向・奥行方向の積載可能数を計算
    • 平面数と段数を算出
    • 総積載数を計算
  2. P2パターン計算
    • P1と同様の計算(配置方向が逆)
  3. P1&P2パターン計算
    • P1の配置後の残りスペース計算
    • 残りスペースにP2を配置
    • 合計平面数の算出
  4. P2&P1パターン計算
    • P2の配置後の残りスペース計算
    • 残りスペースにP1を配置
    • 合計平面数の算出
  5. 最適パターンの選定
    • 各パターンの充填率を比較
    • 最も充填率の高いパターンを推奨

4. PL情報読込

Private Sub PL情報読込()

読み込みデータ:

有効寸法とは: パレットの実寸法から、デッキボードの厚みや桟の出っ張りを引いた、実際にケースを積載できる範囲の寸法です。

5. ケース情報読込

Private Sub ケース情報読込()

読み込みデータ:

6. PLID選択

Private Sub PLID選択()

処理内容:

📊 計算式の詳細

平面数の計算

平面数 = 幅方向個数 × 奥行方向個数

段数の計算

段数 = INT(有効高さ / ケース高さ)

総積載数の計算

総積載数 = 平面数 × 段数

充填率の計算

平面充填率 (%) = (平面数 × ケース面積) / (有効幅 × 有効奥行) × 100

必要PL数の計算

必要PL数 = CEILING(総ケース数 / 総積載数)

※ CEILING関数で切り上げ(不足を防ぐため)

平均充填率の計算

平均充填率 (%) = (総ケース数 / (必要PL数 × 平面数)) × 100

🖼️ 積付イメージ描画機能

描画メソッド一覧

メソッド名 説明
積付イメージP1() P1パターンの積付図を描画
積付イメージP2() P2パターンの積付図を描画
積付イメージP1P2() P1&P2パターンの積付図を描画
積付イメージP2P1() P2&P1パターンの積付図を描画

描画の基本構造

  1. Bitmapオブジェクト作成
    Dim img As New Bitmap(W + 10, H + 10)
    Dim g As Graphics = Graphics.FromImage(img)
  2. パレット枠の描画
    g.FillRectangle(Brushes.Bisque, x1, y1, x2, y2) ' ベージュで塗りつぶし
    g.DrawRectangle(Pens.Black, x1, y1, x2, y2) ' 黒枠線
  3. 有効範囲の描画
    g.DrawRectangle(Pens.Black, x1, y1, x2, y2) ' 黒枠線
  4. ケース配置の描画
    g.FillRectangle(Brushes.Azure, x1, y1, x2, y2) ' 水色で塗りつぶし
    g.DrawRectangle(Pens.Black, x1, y1, x2, y2) ' 黒枠線
  5. 余剰スペースの描画
    g.FillRectangle(Brushes.Thistle, x1, y1, x2, y2) ' 薄紫で塗りつぶし
  6. 画像の表示
    積付イメージPb.SizeMode = PictureBoxSizeMode.Zoom
    積付イメージPb.Image = img

色の使い分け

用途 意味
Bisque(ベージュ) パレット本体 パレットの物理的範囲
Black(黒線) 枠線・有効範囲 境界線
Azure(水色) 積載されるケース 有効活用されるスペース
Thistle(薄紫) 余剰スペース デッドスペース
White(白) 背景 パレット外の空間

📈 全PL集計機能

全PL集計

Private Sub 全PL集計()

集計内容:

最適パターン表示Dgv

Private Sub 最適PL荷姿計算DataGridView表示()

表示項目:

内容
推定試算連番 計算パターンの識別番号
PLID 使用パレットの識別子
ケースNo ケースの識別番号
積付パターン P1、P2、P1&P2、P2&P1
平面数 1段あたりのケース数
段数 積み上げ可能段数
総積載数 1パレットあたりの総ケース数
必要PL数 全ケース保管に必要なパレット数
推定平均充填率 実効的な充填率

🎨 UI コンポーネント

入力コントロール

コントロール 説明
PLID選択Cb パレットIDを選択するComboBox
保存PathTb Excelファイルのパス表示

DataGridView一覧

表示用TextBox

コントロール 表示内容
保管に必要なPL数Tb 総必要パレット数

ボタン

RadioButton(ソート機能)

PictureBox

TabControl

Label

🎯 視覚的フィードバック

背景色の変更

計算実行時に、複数のコントロールの背景色が同時に変化します:

状態 背景色 対象コントロール
初回計算 GreenYellow(黄緑色) ・積載計算結果Gv(奇数行)
・保管に必要なPL数Tb
・積付イメージPb
再計算 Aquamarine(水色) ・積載計算結果Gv(奇数行)
・保管に必要なPL数Tb
・積付イメージPb

操作説明ラベルの色変化

🔄 処理フロー全体図

┌─────────────────────────────────────┐
│   フォームロード                      │
└──────────┬──────────────────────────┘
		   │
		   ├→ 使用期限・著作権表示
		   ├→ ファイル確認
		   ├→ Excelパス設定
		   ├→ PL情報読込
		   │   └→ パレット仕様マスターデータ取得
		   ├→ ComboBox項目書込
		   ├→ ケース情報読込
		   │   └→ ケース寸法・数量データ取得
		   └→ PL積付計算実行
		   │
		   ▼
┌─────────────────────────────────────┐
│   PLID選択                            │
└──────────┬──────────────────────────┘
		   │
		   └→ 選択されたPLの情報取得
		   │
		   ▼
┌─────────────────────────────────────┐
│   PL積付計算実行ボタンクリック        │
└──────────┬──────────────────────────┘
		   │
		   ▼
┌─────────────────────────────────────┐
│   PL積付計算                          │
└──────────┬──────────────────────────┘
		   │
		   ├─ P1パターン計算
		   │   ├→ 幅方向個数算出
		   │   ├→ 奥行方向個数算出
		   │   ├→ 平面数 = 幅 × 奥行
		   │   ├→ 段数算出
		   │   └→ 総積載数 = 平面数 × 段数
		   │
		   ├─ P2パターン計算
		   │   └→ (P1と同様、配置方向が逆)
		   │
		   ├─ P1&P2パターン計算
		   │   ├→ P1配置
		   │   ├→ 残りスペース計算
		   │   └→ 残りにP2配置
		   │
		   ├─ P2&P1パターン計算
		   │   ├→ P2配置
		   │   ├→ 残りスペース計算
		   │   └→ 残りにP1配置
		   │
		   ├─ 各パターンの充填率計算
		   │
		   └─ 最適パターン選定
		   │
		   ▼
┌─────────────────────────────────────┐
│   積付イメージ描画                    │
└──────────┬──────────────────────────┘
		   │
		   ├─ パレット枠描画
		   ├─ 有効範囲描画
		   ├─ ケース配置描画
		   └─ 余剰スペース描画
		   │
		   ▼
┌─────────────────────────────────────┐
│   全PL集計                            │
└──────────┬──────────────────────────┘
		   │
		   ├─ 必要PL数算出
		   ├─ 平均充填率計算
		   └─ 結果表示・視覚的フィードバック
			

💡 使用シーン

1. 新商品の物流設計

2. 倉庫スペース計画

3. 輸送効率の改善

4. コスト削減

5. シミュレーション

📊 DataGridView設定

共通設定

特殊設定(積載計算結果Gv)

.AlternatingRowsDefaultCellStyle.BackColor = Color.GreenYellow
' または
.AlternatingRowsDefaultCellStyle.BackColor = Color.Aquamarine

奇数行の背景色を設定し、計算実行のたびに色が切り替わります。

⚠️ 注意事項と制約

計算上の制約

実用上の注意

データ入力の注意

🔗 関連モジュール

このユーティリティは、以下のTera計算システムと連携します:

💾 ファイル・データ構成

Excelファイル

ファイルパス: Dat保存Path & "\PL積付計算\PL積付計算.xlsx"

シート1: PL仕様と荷姿
- パレット仕様マスターデータ

シート2: ケース数と寸法
- ケース寸法・数量データ

データ接続

Provider=Microsoft.ACE.OLEDB.12.0
Data source=[ファイルパス]
Extended properties="Excel 8.0;HDR=YES;IMEX=1"

🎓 積付の基礎知識

積付パターンの選び方

  1. P1パターン: ケースが長方形で、長辺が短辺の2倍程度の場合に有効
  2. P2パターン: P1では充填率が低い場合の代替案
  3. P1&P2パターン: デッドスペースを最小化したい場合
  4. P2&P1パターン: P1&P2で充填率が低い場合の代替案

充填率の目安

充填率 評価
90%以上 非常に良好
80~90% 良好
70~80% 標準
60~70% やや低い(改善検討)
60%未満 低い(要改善)

改善のポイント

📚 まとめ

T3_Uty3PL積付と保管規模.vb は、パレット積付の最適化と保管計画を支援する高度な計算ツールです。

主な特徴

適用分野

計算精度の向上ポイント

実用上の重要事項: 計算結果は理論値です。実際の運用では、安全性・安定性・作業性を考慮し、10%程度の余裕を持った計画が推奨されます。

📞 サポート情報

ドキュメント作成日: 自動生成

対象ファイル: T3_Uty3PL積付と保管規模.vb

言語: Visual Basic .NET (VB.NET)

総行数: 2609行

主要技術: Windows Forms, EPPlus, Graphics描画, 最適化計算