社内の周知に関して、読めよと言っても、確認しない輩がいますね。
周知も読まないで、質問に来る人が、あとを絶えない状況はどうしたらいいでしょうか?
確認しない輩は、データベースで見つけます。
目次
その後の検索フォーム
こんにちは。伊川(@naonaoke)です。
以前に、最強の検索フォームというタイトルで、検索フォームの作成方法を紹介しました。
検索フォームすることに関しては、問題がないのです。
しかし、その周知が読まれたのか確認ができないですね。
また、周知を発行するものは、読んだ人ではなく、
読んでいない人を探したいのです。
今回は、今まで紹介した記事の技を利用して、周知確認の有無をACCESSで管理したいと思います。
このブログはこんな人にお勧め
-
- 社内周知をデータベースで管理したい人
- 社内周知を読まない人を探したい人
- 社内周知を読まない人の査定を下げたい人
このブログを、読み終わるころには・・・・
だから、それほど、需要はないかもしれません。
しかし、各セクションで利用するには、ぴったりだと思います。
また、ACCESSの小技も含んでいますので、ぜひ参考にしてください。
最強の検索フォームのその後
今回は、最強の検索フォームにおまけをつけました。
コードも2通りあります。
難しいほうは、DAOを利用しますので、少し面倒です。
しかし、後々は、DAOを利用したほうがACCESSは重くなりませんので、DAOを利用するほうがお勧めです。
おい、周知を確認したか? 作業手順 その1 データベース確認
最強の検索フォームのデータベースは、上のようになっています。
最強の検索フォームは、固定ページにまとまっていますので、ぜひ、読んでみてください。
おい、周知を確認したか? 作業手順 その2 レポートに、社員IDを追加する
赤枠のように、社員IDを追加します。
この方法は、下記の記事で紹介しています。
システムを作成するときは、ほぼ自動にしないと重宝されません。
社員IDというか、PCにログインしたときのユーザーIDを、社員IDとしています。
おい、周知を確認したか? 作業手順 その3 MT_周知確認にコードを転送する
このように確認した、社員ID、記事番号、確認日時、複合IDを、MT_周知確認へ、反映させます。
この時に重要なのが、複合IDです。
この複合IDは、記事番号と、社員IDを合体させました。
一意のキー(社員ID)と、一意のキー(記事番号)を合わせても、一意のキーしかできません。
なぜこのような細工が必要なのでしょうか?
テーブルに主キーを設定するために、複合IDを主キーにする必要があります。
ここで、主キーにすれば、重複登録はされません。
このようば場合、必ず、2回以上クリックするヤツがいまます。
しかも、毎回同じヤツです。
もちろん、他でも重複登録を避けることができますので、コードを紹介します。
おい、周知を確認したか?作業手順 その4 転送コード その1
実は、この重複判定は、過去の記事で紹介しています。
主キーがすでに利用されているか、されていないかの判定をする記事です。
また、MT_周知確認に転送するコードも説明しています。
社員IDは、非連結のテキストボックスに格納されています。
重複登録を避けるには、一番メジャーな書き方です。
ここで、何か気づきましたか?
ACCESSでは、なるべくやってはいけないこと
そう、Dcount関数を使っています。
Dcount関数が、ダメではありませんが、いずれ、ACCESSが重くなります。
おい、周知を確認したか?作業手順 その5 転送コード その2
このコードのほうが、スッキリしています。
Dcount関数も使っていないので、ACCESSも重くなりません。
なんとなく、プログラムチックですよね。
おい、周知を確認したか?作業手順 その6 転送コード 周知未読野郎を探せ
周知未読野郎は、クエリで探しましょう。
クエリがあればカンタンに見つけられます。
社員IDのtekisは、どんでもない未読野郎とわかります。
周知を、5つも読んでいません。
社員IDしか表示されていませんが、名前も表示させることもできます。
確認しましたのボタンを押さない限り、周知を読んだと認めない。
ACCESSって本当に便利ですね。
ここがポイント
最強検索フォームに、オマケを付けました。DAOのコードを利用した書き方は、ACCESSを操作するにおいて非常に重要です。知らないうちに、皆さんも、ADO、DAOを利用していると思います。しかし、コードが動いたら、その意味を考えて、別のコードを組んでみましょう。そして、そのコードがまた動いたら、また、別のコードを組んでみましょう。その積重でVBAのスキルは、確実に向上します。
まとめ
今回は、単純に、周知の判定でしたが、ACCESSの便利な技がたくさん詰まっています。
この発想は、いいねボタンの発想です。
もちろん、いいねボタンもつけることはできるでしょう。
しかし、社内で利用するものなので、確認ボタンにしました。
是非、利用してみてください。
今回も最後までお読みいただきありがとうございました。
今回のサンプルファイルは、No239です。
わからない事を延々と考えるのは、無駄です。
- なんで作動かないの?
- もうやだ!VBAなんか嫌い!
- ネットで調べても情報がない!
必ず作動するコードが、ここにあります。