いきなり答える備忘録

Google Workspace・Microsoft 365・LibreOfficeなどに関するメモ

(Gスプレッドシート)複数選択できるプルダウンを作る方法

 Googleスプレッドシートで、複数選択できるプルダウンを作る方法についてです。

  • プルダウン設定画面中の「複数選択できるようにする」にチェックを入れると、複数の選択肢を選択できるようになります。
  • 表示スタイルが「チップ」の場合だけ適用でき、「矢印」や「書式なしテキスト」とは併用できません。

複数選択できるプルダウンの設定方法

 まずはプルダウンを設定するセル範囲(ここではC3:C7)を選択し、右クリックして「プルダウン」を選択します。上部のメニューから「挿入」→「プルダウン」と選択してもOKです。

 


 ウインドウ右側に現れるペイン(設定用領域)で選択肢を設定します。条件を「プルダウン(範囲内)」にして選択肢を他のセルから参照することもできます。
 そしてその下にある「複数選択できるようにする」のチェックボックスにチェックを入れます。

 


 これでセルをクリックして複数の項目を選択できるようになります。
 項目をクリックすると右端にチェックが入り、その項目を選択した状態になります。再度クリックすると非選択に戻すことができます。
 Enterキーを押したり他の場所をクリックすると入力を終えることができます。

 


 ひととおり入力を終えた状態です。
 C4,C5セルではともに「国語」と「算数」を選択していますが表示は異なっています。これは選択肢を選択した順番により表示順が決まるためです。

 


 なお、この「複数選択できるようにする」が選択できるのは、表示スタイルがデフォルトの「チップ」の場合だけです。表示スタイルを「矢印」や「書式なしテキスト」にするとチェックできなくなり、併用はできません。

入力した値の抽出

 次の画像では「=C3」などと入力して、プルダウンで入力された各セルの値を参照しています。
 複数選択されたセルについては「英語, 算数」というように、各項目の間にカンマと半角スペースを挿んだ文字列が得られます。よって特定の項目が含まれているか判定したい場合は「=REGEXMATCH(C3,"算数")」のような数式で判定(結果はTRUE/FALSE)できます。

 C4,C5セルではともに「国語」と「算数」が選択されていますが、選択した順番により選択肢の順序が決まるので、取得した文字列も異なるものとなっています。よって「=C4=C5」という比較式も結果はFALSEとなります。



 次の画像では、SPLIT関数を使って各項目を分割して抽出しています。

 E3セル(下方にフィルコピー)

=SPLIT(C3,", ")

 第2引数(区切り文字)を「, 」(カンマと半角スペース)とすることで文字列を分割しています。


 ちなみにプルダウンの選択肢としてカンマや「カンマ+半角スペース」を含んだ文字列を設定することは可能ですが、その場合セルを参照して得られる文字列は「"国語,社会", 英語, 算数」のようにカンマを含む選択肢がダブルクォーテーションで囲まれたものとなります。値の分割が難しくなるので、そのような値の設定はおすすめしません。