【ACCESS VBA】入力漏れ防止のためにフィールドに条件式を設定

B!

このブログで言いたいことは、
ACCESSで同僚をびっくりさせようです。

目次

入力漏れ防止のためにフィールドに条件式を設定

こんにちは。伊川(@IkawaNaosuke)です。

今回は、入力漏れ防止のために、VBAで、条件式を設定したいと思います。

ExcelとACCESSを比較したときに、Excelに絶対に軍配が上がります。

それだけExcelは市民権を得ているんですね。

その人達に、ACCESSって、すごいと思わせるためには、何か、手品のようなものが必要です。

現在、私で、ACCESSのコンサルをしています。

生徒さんも、ACCESSを受け入れてくれなくて、困っているようです。

今回紹介することは、もちろんExcelでもできます。

しかし、ACCESSを利用してもらうために、少し、驚かせてみましょう。

このブログはこんな人にお勧め

今回のテーマ
  • データ入力ついて、入力防止をしたい人
  • ACCESSより、Exelのほうが便利と思っている人
  • 条件式をVBAで設定したい人

このブログを、読み終わるころには・・・・

VBAで条件式を設定することができます。手動でやると、通常は、フィールドの数の分だけ設定をしなければなりません。このコードの利点は、フォームのフィールド全部に条件式を設定できます。

また、フォームで、データ入力に慣れていない人には、効果があるコードだと思います。

FormatConditions

条件式を設定するプロパティです。

これを使うことで、フォーム全体に条件式を設定します。

たとえ、フィールドが100個あっても平気です。

このFormatConditionsは、Excelでも利用できます。

今回は、ACCESSで使用してみます。

FormatConditions 作業手順 その1  入力フォームを作成する


このような感じになります。

入力対象のフィールドに移動すると、フィールドのバックの色が緑になり、文字が黒になる条件式が軌道します。

FormatConditions  作業手順 その2 完成のコード

FormatConditions  作業手順 その3 色の指定


スポンサーリンク

vbBlack ,vbGreen で色を指定しています。

色の指定に関しては、上記の表を参照してください。

Optional myFontColor As Long = vbBlack

このように記載しています。

Optionalを付けた宣言した引数は、Functionプロシージャを呼び出す際に省略できます。

ただし、Optionalを付けた引数以降の引数にもすべてOptionalを付けなければなりません。

FormatConditions  作業手順 その4 すべてのフィールドを適用するには?

For Each ctl In myForm.Controlsで、すべてのフィールドに適用させます。

これも、以前に何度か、動画でも、ブログでも紹介しています。

そして、最後に、記載したコードを、フォームをロードする際に呼び出します。


FormatConditions 作業手順 その5 雑談

各箇所に、acとついています。

このacってなに?ってずーっと思っていました。

なにせ、師匠がいないので、ひたすら、写経をしていましたから。

acはACCESSの略ではないか?

このようなことが最近ネットで調べて分かりました。

どうでもいいことなのですが、初心者の時は、なにもわからないでコードをコピーしていました。

こんな感じだなと思っていました。

最初は、細かい点を気にしないことですね。

ここがポイント

ここがポイント

何度も言っていますが、データベースの最大の敵は入力漏れです。もちろん、VBAや、ACCESSの機能で入力漏れを防止するほうが確実です。

しかし、エンドユーザーを考えて、遊び心がないと、受け入れは難しいかもしれません。

ACCESSの最大の敵は、ACCESSを利用したことがない人です。

この抵抗勢力と戦うためには、ACCESSは、Excelと同じように細工ができるということを教えてあげてください。

動画とブログでわかりやすくExcelとACCESSを紹介しています

まとめ

ACCESSのフォーム上で作動させるコードは、短くて、カンタンです。

VBAを勉強している人は、ACCESSから勉強するのがいいかもしれません。

今回も最後まで読んでいただきありがとうございました。

今回のサンプルファイルは、No207です。

サンプルファイルを購入希望の方はココをクリック
毎日の業務が、3時間短縮できます

わからない事を延々と考えるのは、無駄です。

  • なんで作動かないの?
  • もうやだ!VBAなんか嫌い!
  • ネットで調べても情報がない!

必ず作動するコードが、ここにあります。

最新の記事はこちらから