【Excel VBA】Excel業務管理システム

システムコンセプト

「初回利用者はすぐ試せる。購入後は永久ライセンスに切り替える。」

利用者の操作は非常にシンプルです。

初回起動
    ↓
開始画面
    ↓
【体験版を開始】
    ↓
30日間利用可能
    ↓
期限切れ
    ↓
【永久ライセンスを登録】
    ↓
永久利用

体験版と永久版で操作を分けることで、迷いにくくなります。


システム構成

Excelシステム
│
├── ThisWorkbook
│
├── Module_Config
│
├── Module_Common
│
├── Module_License
│
├── Module_UI
│
├── 開始画面
│
├── メイン
│
└── System(VeryHidden)

開発順番(最適化版)

第1章 開始画面(最優先)

先に画面を完成させます。

開始画面には次の情報を表示します。

━━━━━━━━━━━━━━━━━━━━

Excel業務管理システム

Version 1.0

━━━━━━━━━━━━━━━━━━━━

ライセンス状態

体験版

ライセンス種別

30日体験版

初回利用日

2026/07/15

有効期限

2026/08/14

残り日数

30日

━━━━━━━━━━━━━━━━━━━━

[体験版を開始]

[永久ライセンス登録]

━━━━━━━━━━━━━━━━━━━━

この画面がシステムの入口になります。


第2章 Systemシート(VeryHidden)

ライセンス情報を保存する専用シートを作成します。

例:

A列B列
LicenseTypeTRIAL / PERMANENT
FirstRunDate2026/07/15
ExpireDate2026/08/14
LastRunDate2026/07/15
RegisteredTRUE / FALSE

ユーザーには見えないように xlSheetVeryHidden に設定します。


第3章 Module_Config

設定だけをまとめます。

システム名

Version

30日

開始画面名

メイン画面名

Systemシート名

永久ライセンスパスワード

変更が必要になったら、このモジュールだけ編集します。


第4章 Module_Common

共通処理をまとめます。

例えば、

  • Systemシートの取得
  • データの読み書き
  • 日付の変換
  • シート存在確認
  • エラーメッセージ表示

ライセンス以外でも使える汎用関数を置きます。


第5章 Module_License(システムの中心)

ここがライセンス管理の本体です。

役割は次のとおりです。

① 初回起動チェック

初回なら

今日の日付

↓

FirstRunDate保存

② 有効期限計算

初回日

+30日

↓

有効期限

③ 体験版開始

開始ボタンを押すだけ。

開始

↓

初回日保存

↓

体験版開始

パスワード入力は不要です。


④ 永久ライセンス登録

永久版を購入したユーザーだけ実行します。

永久ライセンス登録

↓

パスワード入力

↓

一致

↓

LicenseType = PERMANENT

登録後は期限を無視して利用できます。


⑤ 起動時判定

LicenseType

↓

PERMANENT?

↓

YES

↓

そのまま起動

違う場合

TRIAL

↓

期限確認

期限内なら利用可能です。


⑥ 残り日数

ExpireDate

-

今日

で計算します。


第6章 Module_UI

開始画面の表示だけを担当します。

表示内容:

ライセンス状態

ライセンス種別

初回利用日

有効期限

残り日数

Version

さらに、

  • 残り30日以上:通常表示
  • 残り7日以下:赤文字
  • 期限切れ:「期限切れ」と表示

など、見た目の制御もここで行います。


第7章 ThisWorkbook

ここにはイベント処理だけを書きます。

開いたとき

開始画面表示

↓

ライセンス情報更新

↓

ライセンス判定

↓

利用可能

↓

メイン表示

閉じるとき

開始画面表示

↓

他シートVeryHidden

↓

保存

↓

終了

起動イメージ

Excel起動
      │
      ▼
開始画面
      │
      ▼
ライセンス情報表示
      │
      ├─────────────┐
      │             │
      ▼             ▼
体験版開始      永久ライセンス登録
      │             │
      ▼             ▼
30日開始      パスワード入力
      │             │
      └──────┬──────┘
             ▼
         メイン画面

この設計のメリット

  • 初回利用者はパスワード不要で、すぐに体験版を利用開始できます。
  • 購入者だけ永久ライセンスパスワードを入力すれば、その後は期限を気にせず利用できます。
  • 体験版と製品版の流れが自然で、利用者が迷いません。
  • ライセンス情報は System シートに集約されているため、管理や保守がしやすくなります。

将来の拡張も容易

この構成なら、後から以下の機能も追加しやすくなります。

  • PC固有情報と永久ライセンスを紐付ける(他PCへのコピー対策)
  • 永久ライセンスキーを複数発行して管理する
  • バージョン情報や更新履歴を開始画面に表示する

このように**「体験版開始」と「永久ライセンス登録」を完全に分離**しておくと、コードもシンプルになり、ユーザーにも分かりやすいシステムになります。

\ 最新情報をチェック /