ExcelでRDB(リレーショナルデータベース)を操作してみようという連載のその20です。前回の記事はこちらです。
データ入力ツール
前回はAccessファイル確認ツールの改善を行いました。この様にツールを作りながらクラスモジュールの見直しをすると理解が深まると実感しました。
今回からデータ入力ツールを検討してみようと思います。この連載ではExcelVBAを使ってAccessファイルを操作することに取り組んでいます。AccessがあればAccessファイルの編集を自在にできるわけですが、Accessを所有している人はそう多くありません。データ入力もExcelでできてしまえば便利ですし、その過程で何か学びがあると思います。勿論、前回まで作ってきたクラスモジュールも使用します。必要に応じて改定しようと思います。
データ入力ツールの機能
それではデータ入力ツールの概要について考えてみましょう。今の所以下の様な機能が思い浮かびます。
- Accessファイルを指定して接続する
- データを入力するテーブルを選択する
- データ入力のがメニューが現れる
- データを入力する
- 決定ボタンを押すと入力した内容が記録される
大体こんな感じでしょうか。
前回のクラスの改善でテーブルを選択できるようになっているので、テーブルの選択は簡単にできるでしょう。
また、データの追加書込みは以下で実施しました。
基本の動作ができあがったら、データチェック機能についても欲しいと思います。たとえば・・・
- データ型の相違(整数型の所に数値以外の文字データを入れる事はできないなど)
- 主キー制約(値が重複しない、NULL値を指定できない)
- 外部キー制約(参照している主キー以外の値を指定できない)
などのルールが守られていない場合、メッセージを出して入力を無効にします。また、外部キー制約の場合の様に入力できる内容がリストで絞れる場合には、ドロップダウンで入力候補を表示できるといいですね。
データ型やキー情報、そして外部キーの参照先も取得できるようになったので、開発は比較的簡単だと思います。やはりクラスモジュールが充実していると開発が楽できそうです。
大体こんな感じで開発していこうかと思います。
次回はデータ入力
そういう訳で、次回からデータ入力機能の中核を作っていきたいと思います。お楽しみに!!