PR

Access VBAで作る対応履歴管理データベース【無料テンプレート配布】

vba

FREE ACCESS TEMPLATE VOL.1

スポンサーリンク

Access VBAで作る対応履歴管理データベース【無料テンプレート配布】

こんにちは。ニンジンです🥕

生成AIの性能が上がって、VBAのコードそのものはAIに書いてもらえる時代になりました。ただ、実際に手を動かしてみると分かるのですが、「動くコードの土台」を最初から自分で組み立てるのと、「すでに動いている土台」を自分の業務に合わせてカスタマイズするのとでは、必要な労力がまったく違います。

そこで今回は、社内の問い合わせ・トラブル対応履歴を蓄積し、過去の類似事例をあとから検索できるようにする「対応履歴管理データベース」を、Access + VBAで自作しました。業界を問わず使える汎用構成にしてあるので、テンプレートとして無料配布します。

この記事では、テンプレートでできること・使い方・ダウンロード方法までを紹介します。VBAコードの中身(検索フィルタの組み立て方や、編集ロックの実装など)は次回以降で詳しく解説する予定です。

この記事で分かること

  • 対応履歴管理データベースでできること
  • 検索・登録・編集・削除・Excel出力など基本操作の使い方
  • テンプレートのダウンロード方法
  • 自分の業務に合わせてカスタマイズする際のポイント
スポンサーリンク

こんな人におすすめ

  • 問い合わせ・トラブル対応の履歴をExcelで管理していて、検索性の限界を感じている人
  • 過去の類似事例をすぐに引き出せる仕組みが欲しい人
  • Access VBAをベースに、自分でカスタマイズしながら使えるツールを探している人
スポンサーリンク

対応履歴管理データベースでできること

このテンプレートは、Access単体で動作する対応履歴管理データベースです。1つの案件につき、対象名・分類・種別・環境・バージョン・発生回数・再現性・内容・対応内容・対応結果、という項目を記録できます。

主な機能は次の通りです。

  • 複数条件を組み合わせた検索(部分一致/完全一致の切り替えも可能)
  • 新規登録・編集・削除
  • 関連資料ファイルへのリンク登録(参考URL1/参考URL2)
  • レコード一覧のExcel出力
  • 分類・種別・環境などの選択肢を自分で追加できるマスタ管理画面
一覧・検索画面の全体像
▲ 一覧・検索画面。上部が検索エリア、中央がレコード内容、右側に印刷・Excel出力ボタン
スポンサーリンク

使い方

レコードを検索する

画面上部の検索エリアで、対象のチェックボックス(対象名・分類・種別・バージョン・環境・発生回数・再現性・内容・対応内容)にチェックを入れ、キーワードを入力して「検索」ボタンを押します。「部分一致」「完全一致」も切り替えられます。

「全データ表示」ボタンを押すと、検索条件をリセットして全件表示に戻ります。

新しいレコードを登録する

一覧・検索画面で「レコード登録/編集」ボタンを押すと、登録用フォームが開きます。

レコード登録フォーム(閲覧状態)
▲ 登録フォームを開いた直後は、既存レコードが閲覧モードで表示される

「追加」ボタンを押すと、入力欄が空欄になり編集可能な状態に切り替わります。各項目を入力し、「更新」ボタンで保存します。

レコード登録フォーム(追加・編集可能状態)
▲ 「追加」ボタンを押した直後。各項目が入力可能になる

レコードを編集・削除する

登録フォームで対象のレコードを表示した状態で「編集」ボタンを押すと、追加時と同様に入力欄が編集可能になります。編集モードでは「削除」ボタンも使えるようになり、確認メッセージのあとレコードを削除できます。

参考ファイルを登録・確認する

登録フォームの「参考URL1」「参考URL2」欄から、関連する資料ファイルを登録できます。一覧・検索画面側では、登録済みのファイルをボタン一つでそのまま開けます。

レコード一覧をExcelに出力する

一覧・検索画面の「レコード一覧をExcel出力」ボタンから、登録されている全レコードをExcelファイル(.xlsx)として出力できます。保存先はダイアログで指定します。

分類・種別・環境の選択肢を追加する

検索やコンボボックスで選べる「分類」「種別」「環境」の選択肢は、設定画面から追加・編集できます。

設定画面
▲ 設定画面。各マスタボタンを押すとテーブルが直接開き、値を追加・編集できる
スポンサーリンク

ダウンロード方法

下のボタンからテンプレートファイル(.accdb)をダウンロードできます。AccessがインストールされたWindows環境であれば、そのままフォームを開いて使い始められます。

テンプレートをダウンロード
スポンサーリンク

カスタマイズのヒント

このテンプレートは特定の業界に限定しない汎用構成にしていますが、項目名(対象名・分類・種別 など)を自分の業務に合わせた呼び方に変えたい場合は、以下の3か所をあわせて変更してください。

  • テーブルのフィールド名
  • フォーム上のラベルの表示文字
  • VBAコード内でフィールド名を直接指定している箇所(検索フィルタの組み立て部分など)
ポイント:フィールド名だけ変えてラベルやコードを直さないと、表示と実際のデータが食い違ってしまうので、3か所セットで変更するのが安全です。
スポンサーリンク

次回予告

次回は、このテンプレートの中身のVBAコードを解説する回です。複数条件を組み合わせた検索フィルタの組み立て方や、編集モードに応じてフィールドをロック/アンロックする仕組みなど、実務でそのまま使えるAccess VBAの設計パターンを紹介します。

さらに次々回では、ファイル選択ダイアログを実装する際に実際にハマった話(生成AIが提案したコードをそのまま使うとどうなったか)を、失敗談込みでお届けする予定です。


FREE ACCESS TEMPLATE VOL.1 補足

スポンサーリンク

マクロが有効にならない場合の対処法

ダウンロードしたテンプレートを開くと、画面上部に「セキュリティリスク」という警告バーが表示され、検索やレコード登録などVBAを使う機能が動かないことがあります。これはAccessの不具合ではなく、インターネット経由で入手したOfficeファイルのマクロを、Microsoftが標準でブロックする仕様によるものです。

セキュリティリスクの警告バー
▲「このファイルのソースが信頼できないため、Microsoftによりマクロの実行がブロックされました」という警告バー
ポイント:このバーが出ている状態では、「詳細を表示」を押してもマクロは有効になりません。ファイルそのもののブロックを解除する必要があります。

対処法1:ファイルのプロパティでブロックを解除する

ダウンロードしたzipファイルを展開したあと、以下の手順で解除できます。

  1. 展開した.accdbファイルを右クリックし、「プロパティ」を開く
  2. 「全般」タブの一番下にある「セキュリティ:このファイルは他のコンピューターから取得したものです。このコンピューターを保護するため、このファイルへのアクセスはブロックされる場合があります。」という項目を確認する
  3. その横の「許可する」にチェックを入れる
  4. 「OK」を押して閉じる

この状態でAccessを開き直すと、警告バーが表示されなくなります。

対処法2:信頼できる場所に登録する

今後も同じフォルダでAccessファイルを扱う予定があるなら、そのフォルダ自体を「信頼できる場所」として登録しておく方法もあります。

  1. Accessを開き、「ファイル」タブ→「オプション」→「セキュリティセンター」→「セキュリティセンターの設定」を開く
  2. 「信頼できる場所」→「新しい場所を追加」から、テンプレートを保存したフォルダを指定する

このフォルダに置いたAccessファイルは、以後マクロの警告なしに開けるようになります。

心配な方向け:ウイルスチェックする方法

知らないところからダウンロードしたファイルをそのまま開くのは不安、という場合は、ブロックを解除する前に一度スキャンしておくと安心です。

  • ダウンロードしたファイルを右クリックし、「Microsoft Defenderでスキャンする」を選ぶ(Windows標準の方法)
  • より詳しく調べたい場合は、複数のウイルス対策エンジンで一括スキャンできるVirusTotalのようなオンラインサービスにアップロードして確認する方法もあります
補足:VBAのソースコードは、Accessで開いたあと「作成」タブ→「Visual Basic」からいつでも中身を確認できます。何が実行されるか気になる場合は、有効化する前にコードを読んでおくのも一つの方法です。


ニンジン🥕アイコン

Follow me on X

本ブログの中の人「ニンジン🥕」はXやってます。新着記事はいち早くポストでお知らせしているので、見逃したくない方は @ninjin_py_vba をフォローしてみてください🥕

@ninjin_py_vba をフォロー

この記事が役に立ったら、シェアしてもらえると嬉しいです🥕

Xでポスト はてブ LINE Pocket

PROJECT LOG — SERIES INDEX
スポンサーリンク

シリーズ記事一覧

電子工作・自動化ツールの製作記録をシリーズごとにまとめています。気になるテーマからお読みください。


Tapo P110Mの消費電力をExcelレポート化する【年次集計・電気代試算・セキュリティ判断編】
FastAPI+openpyxlでTapo P110Mの消費電力をExcelレポート化。15秒間隔の生ログを日次集計する設計や、31円/kWhでの電気代試算、外部公開を見送った理由まで解説します。
Tapo P110M × FastAPIで電力監視ダッシュボードを作る【SQLite記録・リアルタイム堅牢化編】
Tapo P110MのデータをSQLiteに記録し、FastAPI+Uvicornでリアルタイム電力監視ダッシュボードを作る方法を解説。通信失敗時の自動復旧など堅牢化のポイントも紹介します。
Tapo P110M × python-kasaで自作PDUを作る【環境構築・Unsupported device(TPAP)エラー解決編】
Tapo P110Mをpython-kasaで自作PDU化。「Unsupported device」TPAPエラーの原因と対処法、MACアドレスでIP変動に強くする設計、個別/一括ON-OFFの実装コードまで解説します。
Raspberry Pi Pico Wで作る熱中症警戒アラート表示器
Raspberry Pi Pico WとDHT11、0.96インチOLEDで熱中症警戒アラート表示器を自作。気温・湿度から簡易的な暑さ指数を計算し、5段階の顔アイコンで危険度を表示する作り方をコード付きで解説します。
CustomTkinterでオリジナルのメニューバー(File・表示・設定・Help)を自作する
CustomTkinterには無いメニューバー(File・表示・設定・Help)を、CTkFrameとCTkButtonで自作する方法を、5段階のサンプルコードとダウンロード付きで解説します。

vba
スポンサーリンク

コメント