初心者の頃は、コンボボックスが、完成すると、喜びに満ち溢れたものです。
しかし、あまり、長いコンボボックスが、ユーザーの負担になる可能性があります。
目次
コンボボックスは利用するな。選択が一番だ
こんにちは。伊川(@naonaoke)です。
何度か、動画でもブログでも紹介していますが、コンボボックスについてです。
前回は、Excelのクラスモジュールについて、イベントを一括管理することで、特定のTextBoxに値を飛ばすことができました。
ACCESSの場合は、Excelよりも、もっとカンタンにできます。
以前は、私も、長い、長い、コンボボックスを作成しました。
しかし、長いコンボボックスは、ユーザーに負担です。
今回は、私が実際に実務で利用している技を紹介します。
- コンボボックスが作成できる人
- VBAを勉強している人
- 業務効率化をしたい
このブログを、読み終わるころには・・・・
今回の紹介する方法も、絶対ではありません。
私が、実務で利用しても、長いコンボボックスより、不平不満がありませんでした。
コードも、非常にカンタンなので、コンボボックス変わる、一例として、スキルにしてください。
2度と長いコンボボックスは作らない
このような、コンボボックスを、以前の私は、沢山作成していました。
そして、3連動、4連動、5連動のコンボボックスを作成しました。
しかし、ユーザーからしてみると、それほど、便利そうに利用している人はいませんでした。
確かに、102個のあたいがある、コンボボックスは、選択ミスを誘発しそうですね。
同じ選択でも、少し、発想の転換をしてみました。
2度と長いコンボボックスは作らない 作業手順 その1 選択専用のフォームを作成する
このような、選択専用のフォームを作成します。
1番左側のレコードの選択というボタンは、ACCESSの特質上、一気に作成できます。
今回の選択専用のレコードは、全部で102個ありますが、102個のボタンを、1個、1個作成する必要はありません。
選択専用のフォームに仕込むコードは、2行です。
検索に関しては、ワイルドカードを利用しています。
~を含むといようにして、検索をしています。
レコードの選択というボタンに関しては、F_CMDというフォームに、レコードを書込みなさいと記載しています。
2度と長いコンボボックスは作らない 作業手順 その2 フォームをポップアップさせる
このように、フォームをポップアップさせます。
入力したい、テキストボックスを、見ながら、入力できるようにしました。
このように記載することで、上の図のようにフォームを、ポップアップさせると、ユーザーは便利に感じると思います。
2度と長いコンボボックスは作らない 作業手順 その3 フォームの位置を決める
フォームを開くときに、上記のような設定をします。
パソコンのディスプレイによって、位置が、変わる場合があります。
その際は、ご自身で、微調整してください。
これで完成です。
ここがポイント
こんなに、短いコードで、実現できます。
VBAの初心者の方にとっては、最適のような気がします。
ACCESSの勉強を、始めたころには、このような短いコードを、たくさん記載しました。
自分で書いたコードが、実現することは、楽しいです。
そのように、楽しめたなら、VBAのスキルは、アッという間に、向上します。
まとめ
このような手法は、何度か紹介しましたが、これに落ち着きました。
不便か、便利化は、わかりません。
しかし、常に、新しいアイディアを考えていくことです。
今回も最後まで読んでいただきありがとうございました。
今回のサンプルファイルは、No286です。
わからない事を延々と考えるのは、無駄です。
- なんで作動かないの?
- もうやだ!VBAなんか嫌い!
- ネットで調べても情報がない!
必ず作動するコードが、ここにあります。