Skip to content

HosoyaYusaku/excel-seating-chart-maker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Excel_Seating_Chart_Maker

A VBA-powered one-click tool to design and print professional seating charts — all inside Microsoft Excel. Perfect for schools, theaters, meetings, and events, with layouts like School / Theater / Square / U-shape / Island / Opposed.

Seating Chart Example


✨ Features

  • Sheet UI Setup: DesignSheets styles and wires up the 設定 / 座席表 / 資材置き場 sheets you create.
  • One-Click Chart Creation: “座席表を作成!” button renders tables & chairs with human-friendly numbering.
  • Multiple Layouts: School / Theater / Square (ロの字) / U-shape (コの字) / Island / Opposed.
  • Print-Ready: Optimized for A4 (Portrait & Landscape) with margins, header band, and no label overlap.
  • Clean, Readable Code: Pure VBA, no external scripts.

🚀 Quick Start

Here’s how to get up and running.

1) Create a Macro-Enabled Workbook

Create a new .xlsm workbook.

2) Manually Create the Three Sheets

Add three worksheets and rename them exactly:

  • 設定 (settings & input UI)
  • 座席表 (chart output)
  • 資材置き場 (reusable shapes)

The VBA code references these names. Make sure they match exactly.

3) Import the VBA Modules

Open the VBA Editor (Alt + F11), then import all .bas files from vba_modules:

  • Constants.bas
  • SheetDesigner.bas
  • SeatingChartMaker.bas

4) Add Code to the 設定 Sheet Module

Open the sheet module for the worksheet named 設定 and paste:

Option Explicit

Private Sub Worksheet_Activate()
    Application.EnableEvents = True
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Me.Range("C13")) Is Nothing Then
        Application.EnableEvents = False
        SeatingChartMaker.ToggleLayoutInputs
        Application.EnableEvents = True
    End If
End Sub

5) Initialize the UI

Run the DesignSheets macro. It will format the sheets you created, place the 「座席表を作成!」 button on 設定, and prepare validation lists and print settings.

6) Build Your Seating Chart

  1. On 設定, fill in event name, date/time, location, participant count, layout details, and paper orientation.
  2. Click 「座席表を作成!」.
  3. View and print from 座席表 (A4 optimized).

📂 Repository Contents

Path Description
vba_modules/Constants.bas Constants, colors, helper functions
vba_modules/SheetDesigner.bas Sheet formatting and UI setup
vba_modules/SeatingChartMaker.bas Layout drawing logic
docs/images/ Optional screenshots for README
sample_data/sample_output.xlsx Sample output workbook

📄 License

This project is released under the MIT License. See LICENSE for details.


エクセル座席表メーカー

Microsoft Excel(VBA)だけでワンクリックで座席表を作成し、A4 サイズで美しく印刷できます。 レイアウトは スクール/シアター/ロの字/コの字/島型/対面に対応。

座席表サンプル


✨ 主な機能

  • UI セットアップDesignSheets は、あなたが用意した「設定」「座席表」「資材置き場」シートを整形し、入力規則や印刷設定を配置します。
  • ワンクリック作成:「座席表を作成!」ボタンで机・椅子を自動描画。
  • 複数レイアウト対応:スクール/シアター/ロの字/コの字/島型/対面。
  • 印刷最適化:A4 縦横、余白・見出しの調整済み。重なりを抑制。
  • 読みやすい純 VBA:外部スクリプト不要。

🚀 使い方

1)マクロ有効ブックを作成

新規に .xlsm ブックを作成します。

2)3 つのシートを手動で作成

ブックに以下の 3 シートを追加し、正確にリネームしてください。

  • 設定(入力 UI)
  • 座席表(出力)
  • 資材置き場(パーツ置き場)

VBA でこれらのシート名を参照しています。必ず名称を一致させてください。

3)VBA モジュールをインポート

Alt + F11 で VBE を開き、vba_modules.bas をすべてインポートします。

  • Constants.bas
  • SheetDesigner.bas
  • SeatingChartMaker.bas

4)「設定」シートのシートモジュールに貼り付け

「設定」シートのシートモジュールに、次のコードを貼り付けます。

Option Explicit

Private Sub Worksheet_Activate()
    Application.EnableEvents = True
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Me.Range("C13")) Is Nothing Then
        Application.EnableEvents = False
        SeatingChartMaker.ToggleLayoutInputs
        Application.EnableEvents = True
    End If
End Sub

5)UI を初期化

DesignSheets を実行すると、作成した 3 シートが整形され、 「設定」に 「座席表を作成!」 ボタンや入力規則、印刷設定が配置されます。

6)座席表を作成

  1. 「設定」で会議名・日時・場所・人数・レイアウト・用紙の向きを入力
  2. 「座席表を作成!」 をクリック
  3. 「座席表」から印刷(A4 最適化)

📂 リポジトリ構成

パス 説明
vba_modules/Constants.bas 定数・色・ヘルパー関数
vba_modules/SheetDesigner.bas シート整形と UI セットアップ
vba_modules/SeatingChartMaker.bas レイアウト描画ロジック
docs/images/ README 用スクリーンショット
sample_data/sample_output.xlsx 出力サンプル(見本ブック)

📄 ライセンス

このプロジェクトは MIT ライセンスで公開しています。 詳しくは LICENSE をご確認ください。

About

A tool to automatically create a conference seating chart using Excel VBA

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published