とりにくを好きな人がVBAを勉強しています。

VBAを中心に、その他日々の生活で感じていることを書いていきます。

【Excel】【VBA】入力規則のリストで「数が多いと逆に使いづらい」問題を解消するアイディア

おはようございます。こんにちは。こんばんは。
とりにくVBAです。


仕事で、入力規則を使ってリストを設定することがありますが、



リストの数が多いと逆に使いづらいなあと常々思っておりました。



今回はその問題をVBAで解消する一つのアイディアを紹介します。



サンプルとして、A列にリスト、C2セルが入力欄になっているものを用意しました。


リストは50まで入力されています。


f:id:mayo032j:20201024123845p:plain


フォームを用意します。


f:id:mayo032j:20201024123702p:plain


同じ形のリストボックスを三つ並べただけです。


リストの数に応じて調整しましょう。


コードは次のとおりです。


f:id:mayo032j:20201024130632p:plain


フォームを表示したとき、それぞれのリストボックスに20個ずつリストの値を表示します。


リストボックスの値をクリックすると、C2セルに値が転記されます。


C2セルを選択したときにフォームが表示されるようにするので、転記が終わったらアクティブセルをずらす処理をしています。


入力欄を選択するとフォームが表示されるようにします。


f:id:mayo032j:20201024130934p:plain


簡単ですが、これで終了です。


C2セルをマウスでクリックしてみます。


f:id:mayo032j:20201024131127p:plain


全ての選択肢が見やすくなっていますので、マウスで簡単に選択できます。



以上、入力規則のリストで「数が多いと逆に使いづらい」問題を解消するアイディアでした。



リストボックスの数や一つのリストボックスに表示する数を変更して活用してみてください。