ランタイム運用でAccessファイルを最適化するには

2019.07.28
2021.05.15

データベースの最適化/修復

Accessは処理をすればしただけ、どんどんファイルサイズが大きくなってきます。

その肥大化したファイルから不要なデータ等を削除してファイルサイズを小さくするのが、「データベースの最適化/修復」という機能になります。

また、Accessファイルが損傷したときもこの機能で修復することができる場合もあります。

【AD】

「最適化/修復」するには

メニューの「ファイル」から「データベースの最適化/修復」ボタンをクリックして、Accessファイルを最適化します。

[データベースの最適化/修復]ボタン
[データベースの最適化/修復]ボタン

しかし、ランタイム運用時にはこのボタンが表示されませんので、どんどんファイルサイズが大きくなってしまいます。

最適化の進捗状況の表示
最適化の進捗状況の表示

Access終了時に最適化

Accessには、終了時に「最適化」を設定する機能があります。

この機能を設定しておけば、Accessを終了するときに自動的に「最適化」を実行します。

もちろん、ランタイムでAccessを運用する時でも「最適化」を設定しておけば、終了時に自動的に「最適化」を実行し、ファイルサイズを小さくしてAccessファイル肥大化を防ぐことができます。

つまり、ランタイムでAccessを運用するのであれば、この機能を設定する必要があります。

終了時にAccessファイルを最適化する設定は次のとおりです。

「ファイル」⇒「オプション」⇒「現在のデータベース」⇒「閉じるときに最適化する」にチェックを入れる。

 

「閉じるときに最適化」設定画面
「閉じるときに最適化」設定画面

[終了]ボタンの設置

画面右上の[×]ボタンをクリックしてもファイルを最適化してAccessを終了しますが、[終了]ボタンを設置してVBAやマクロでAccessを最適化して終了することもできます。

VBAでAccessを終了させるとき、Application.Quitと記述すると最適化せずにAccessを終了するので、DoCmd.Quitで最適化してAccessを終了します。

【AD】

Accessは、マイクロソフト社のオフイス製品に含まれるデータベースソフトです。Accessは、大規模なシステムを構築するには不向きですが、テーブル、クエリ、フォーム、レポートなどの機能が全て揃っています。
小規模のシステムを早期に開発するには最適です。

Access
アクセスのロゴ

データベースは、大量のデータを蓄積することができます。

データは、テーブルに蓄積します。

処理は、フォーム上に設置したボタンなどに組込んだ命令でデータ処理します。

その命令でクエリがテーブルから必要なデータを抽出したり、演算処理して、フォームやレポートで表示します。

Excelも同じようにデータベースとして使うこともできますが、Excelはあくまでも表計算ソフトであり、蓄積できるデータ量に限りがありますので、大量のデータを扱うには不向きです。

Accessファイルの中には、テーブル、クエリ、フォーム、レポートといったAccessを業務システムとして使うときに必要とされる機能が全て揃っています。

大規模なシステムを構築するには不向きですが、小規模のシステムを構築するには最適です。

【AD】

システムを作る環境が整っている

Accessの特徴は、1つのファイルの中にシステムを作る環境がすべて揃っていることです。

クエリの存在は大きいです。

クエリを理解できれば、大抵のデータ処理はできるはずです。

クエリの使い方を知ることが重要です。

ユーザがシステムと接するインターフェースは、フォームが担います。

フォーム上に数値を入力するテキストボックスやボタンなどのオブジェクトを配置して、入力画面などのユーザ・インターフェース(UI)を作ります。

これらのオブジェクトには、プロパティがあり、あらかじめ各種操作が用意されていて、何をやりたいか選択すればプログラムをしなくてもデータ検索、データ追加・変更・削除など、ある程度の処理ができてしまいます。

Accessは、プログラムの知識ができなくても簡単なシステムであればコードを書くことなくシステムができます。

しかし、複雑な処理をするにはVBAの知識が必要になります。

大きなシステムを導入するほど処理するデータ数がないが、事務処理を自動化したい。開発費用や運用費用を抑制したいなどの理由から、Accessで基幹業務を担っている企業もあります。

Accessで何ができるのか?

開発環境の整っているAccessなら、短期間に大きなコストをかけることなく、顧客管理、見積・売上管理、在庫管理など、大抵のシステムは開発できます。

例えば、簡易なPOS機能を備えた「POSレジ」は、ユーザの必要な機能を備えたレジを短期間に開発したソフトの例です。

業務はそれぞれやり方があるので、一般的な市販ソフトでは対応できないユーザの必要とする機能や手順など、Accessなら実現できます。

システムの形態としては、1台のパソコンで運用するスタンドアローンやファイルサーバなどを利用してネットワーク化し、複数人でシステムを運用するシステムとすることもできます。

このように、Accessは、莫大なシステム開発費をかけずに、対費用効果の大きい効率的なシステムを必要とする中小規模の会社、商店、個人事業者の業務システムに向いています。

また、大企業でも基幹業務系ではないサブシステムとして、Accessを活用する考え方もあります。

【AD】