表に入力したデータを後で集計しようと思ったら、アルファベットの全角↔半角等の表記ゆれが出てしまいます。。
後から修正するのが大変なので、表記ゆれが出ないように対策できないですかね?
そんな場合、「データの入力規則」という機能でドロップダウンリストを設定すると良いですよ!
では、詳細を解説していきますね。
セルを選択入力させたい場合は「ドロップダウンリスト」が有効
後からデータ集計/分析をするにあたり、表のデータは完全一致したものである必要があります。
なぜなら、「りんご」と「林檎」等、人間目線では同じ意味だと読み取れても、Excelは別データだと認識してしまうためです。
このように表記がゆれてしまうことを「表記ゆれ」と呼ぶ。
こうした表記ゆれがあると、後工程で集計結果が狂う、入力用の表にセットした数式がエラーになる等の影響が出てしまいます。
こんな場合、「データの入力規則」という機能を使い、ドロップダウンリストを設定することで表記ゆれを防止することがベターです。
ドロップダウンリストの使用イメージ
ドロップダウンリストとは、セルの値を選択入力できる機能のことです。
具体的には、セル選択時に表示される「▼」ボタンをクリックすると表示されるリストを指します。
一例として、「商品コード」列に対してドロップダウンリストを設定したイメージが以下です。
このリストの選択肢から選んだものが、そのセルの値になります。
また、選択肢と同じ値を手入力することも可能ですが、選択肢以外の値を入力してしまった場合、原則的に以下のエラーメッセージが表示され、選択肢以外の値は制御されます。
設定を変えれば選択肢以外の値の入力も可能。
この値は、このセルに定義されているデータ入力規則の制限を満たしていません。
これにより、通常の手入力よりも入力データの表記ゆれを防止でき、かつ入力の手間も減らせます。
なお、ドロップダウンリストの設定セルを選択し、「Alt」+「↓」のショートカットキーを使えば、キーボード操作のみで選択入力が可能です。
ドロップダウンリストの設定手順
ドロップダウンリストを設定したい場合は、以下の手順となります。
- 入力規則を設定したいセル範囲を選択
※今回はC2~C11セル - リボン「データ」タブをクリック
- 「データの入力規則」をクリック
- 「リスト」を選択
- ドロップダウンリストの選択肢にしたいセル範囲を選択
※今回は「商品マスタ」シートのA2~A10セル - 「OK」をクリック
【参考】「元の値」はマスタを参照することがベター
手順⑤は別表の「マスタ」を参照することをおすすめします。
マスタとは、管理対象のデータが一意(重複していない)にまとまった表のことです。
今回で言えば、商品情報をまとめた「商品マスタ」が該当します。
こうしたマスタを参照するようにしておくと、後から選択肢の内容を変更したい場合、参照中の表データを更新するだけでメンテナンスが済み、管理工数を削減できます。
ちゃんとしたマスタを用意するまでもない場合は、最低限ドロップダウンリストの選択肢を別表にまとめて参照すると良いでしょう。
【参考】「元の値」は定数にすることも可能
「元の値」は、前述の通りマスタを参照することがセオリーですが、他のユーザーに変更させたくない場合は、定数(固定値)を設定することも可能です。
「元の値」の入力ルールは、数式のルールと異なるため、ご注意ください。
具体的な入力ルールは次の通りです。
- 選択肢が文字列でもダブルクォーテーション(”)で囲う必要なし
- 選択肢の間はコンマ(,)で区切る
【参考】「設定」タブで指定できる入力値の種類
ドロップダウンリストは「データの入力規則」の「設定」タブの「入力値の種類」を「リスト」にしましたが、「リスト」以外にも設定可能な種類が用意されています。
「リスト」以外はドロップダウンリストではなく、通常通りセルへ手入力しますが、設定した条件を満たさない場合は、エラーメッセージが表示される点は共通です(「すべての値」以外)。
「リスト」以外の入力値の種類を順番に解説していきましょう。
すべての値
入力値の種類が「すべての値」は、文字通りすべての値の入力を許容します。
「データの入力規則」を設定する前の状態ですね。
こちらは、「データの入力規則」の「設定」タブで設定した内容のみを初期化したい場合に選択します。
整数
入力値の種類が「整数」は、文字通り整数を対象に入力可能な値に制限を設けることが可能です。
設定した条件に該当するものは入力可能であり、条件に該当しない場合にエラーメッセージが表示されます。
整数の数値を手入力する列に設定すると良いでしょう。
小数点数
入力値の種類が「小数点数」は、少数を含む数値を対象に入力可能な値に制限を設けることが可能です。
設定した条件に該当するものは入力可能であり、条件に該当しない場合にエラーメッセージが表示されます。
少数が含まれる数値を手入力する列に設定すると良いでしょう。
日付
入力値の種類が「日付」は、文字通り日付を対象に入力可能な値に制限を設けることが可能です。
設定した条件に該当するものは入力可能であり、条件に該当しない場合にエラーメッセージが表示されます。
日付を手入力する列に設定すると良いでしょう。
日付はyyyy/m/d形式で入力(yyyyを省略すると現在の年が自動入力)。
時刻
入力値の種類が「時刻」は、文字通り時刻を対象に入力可能な値に制限を設けることが可能です。
設定した条件に該当するものは入力可能であり、条件に該当しない場合にエラーメッセージが表示されます。
時刻を手入力する列に設定すると良いでしょう。
時刻はh:mm:ss形式で入力(ssを省略すると「00」が自動入力)。
文字列(長さ指定)
入力値の種類が「文字列(長さ指定)」は、文字列の長さを基準に入力可能な値に制限を設けることが可能です。
各値のボックスには、文字列の長さを示す整数を指定してください。
設定した条件に該当するものは入力可能であり、条件に該当しない場合にエラーメッセージが表示されます。
郵便番号等、桁数が決まっているデータを手入力する列に設定すると良いでしょう。
文字列は半角、全角関係なく1文字扱い。
ユーザー設定
入力値の種類が「ユーザー設定」は、数式を用いて独自のルールで制限を設けることが可能です。
一例として、一意の値以外を入力できないよう関数のCOUNTIFSを活用したものが以下です。
複数セルへ入力規則を設定する際、そのセル範囲の起点(左上隅)のセルを対象に数式を設定してください。
独自で制御したいルールがあれば、活用すると良いですね。
なお、「データの入力規則」ダイアログ内では、数式バーと異なり関数名のサジェストがされないため、数式が合っているか不安な方は、ワークシート上で動作検証したものをコピペすると良いでしょう。
COUNTIFSの詳細は以下の記事をご参照ください。
はじめに この記事は関数の概要とCOUNTAの使い方を把握していることが前提です。 参考記事 関数の概要とCO …
「データの入力規則」のクリア手順
ドロップダウンリスト等、「設定」タブで設定した内容は前述の通り入力値の種類を「すべての値」にすれば良いですが、他のタブ含めたすべての設定をまとめてクリアしたい場合は、以下の手順となります。
「データの入力規則」は同じセルに複数タブの設定を併用することが可能。
- 入力規則をクリアしたいセル範囲を選択
※今回はC2~C11セル - リボン「データ」タブをクリック
- 「データの入力規則」をクリック
- 「すべてクリア」をクリック
- 「OK」をクリック
【注意】ドロップダウンリストの弱点2選
ドロップダウンリストでの制御も完璧ではありません。
大きく2つの弱点があります。
- コピペで上書きされるリスクがある
- 「元の値」がテーブルの場合でも拡張されない
弱点①は、ドロップダウンリストが設定されたセルに対し、未設定のセルをコピー元としてコピペで上書きされてしまうと、ドロップダウンリストの設定もなくなってしまいます。
そうすると、結局表記ゆれのリスクが残ってしまいます。
完璧に制御したい場合は、コントロールやユーザーフォームといった機能を使えば良いですが、どちらもVBAが使えることが前提となるため、ハードルは高めです。
弱点②は、「元の値」で参照するマスタをテーブルにしたとしても、固定のセル範囲扱いとなってしまい、マスタへレコード追加してもドロップダウンリスト側へ連動しません。
他の関数やピボットテーブル等でテーブルを参照した場合は、参照範囲がテーブルのレコードの増減に連動しますが、「データの入力規則」は例外的に注意が必要になるというわけです。
こちらは、対策として関数のINDIRECTを併用することで解決できます。
詳細は別記事をご参照ください。
テーブルとINDIRECTそれぞれの詳細および組み合わせテクニックは、以下の記事をご参照ください。
はじめに 本題に入る前に、この記事がおすすめな方を挙げてみます。 Excelでデータの集計/分析作業を行うこと …
はじめに この記事は関数の概要を把握していることが前提です。 参考記事 関数の概要の詳細は以下の記事をご参照ください。 ワークシート上のセルの値を数式の一部として利用したい場合は「INDIRECT」が有効 実務では、ワー …
はじめに この記事はドロップダウンリストの設定方法とテーブルを把握していることが前提です。 参考記事 「データの入力規則」でドロップダウンリストを設定する方法とテーブルの詳細は、以下の記事をご参照ください。 「元の値」が …
【参考】Microsoft365ならドロップダウンリストの選択肢がサジェストされる
ドロップダウンリストは選択肢の数が多い場合、選択するにも手間がかかる、あるいは誤選択してしまうリスクもあります。
しかし、Microsoft365の2308 (ビルド 16731.20170)以降のバージョンであれば、ドロップダウンリストのオートコンプリート機能が実装され、途中入力した内容で選択肢から一致するもののみをサジェストしてくれるようになりました。
詳細はMicrosoft公式のアップデート情報をご覧ください。
バージョン 2308: 8 月 28 日
バージョン 2308 (ビルド 16731.20170)
機能の更新プログラム
Excel
データの入力規則ドロップダウン リストのオートコンプリート: ドロップダウン リストは、Excel でのデータ入力と検証をより効率的にする便利な方法です。 オートコンプリート機能が追加されました。これにより、セルに入力されたテキストがドロップダウン リスト内のすべての項目と自動的に比較され、一致する項目のみが表示されます。 リストのスクロール、データの入力規則エラーの処理、またはこのタスクを処理するための複雑なコードの記述に費やす時間が短縮されます。
サンプルファイルで練習しよう!
可能であれば、以下のサンプルファイルをダウンロードして、実際に操作練習をしてみてください。
サンプルファイル_データの入力規則_ドロップダウンリスト.xlsx
サンプルファイルのダウンロードには無料メルマガに登録いただく必要があります(上記リンクから登録フォームへ遷移します)。
ブックを開いたら、次の手順を実施してください(今までの解説のまとめです)。
- 入力規則を設定したいセル範囲を選択
※今回はC2~C11セル - リボン「データ」タブをクリック
- 「データの入力規則」をクリック
- 「リスト」を選択
- ドロップダウンリストの選択肢にしたいセル範囲を選択
※今回は「商品マスタ」シートのA2~A10セル - 「OK」をクリック
本記事の解説と同じ結果になればOKです!
さいごに
いかがでしたでしょうか?
ドロップダウンリストは、ヒューマンエラーによる表記ゆれの予防に役立つ機能です。
表記ゆれを修正する手間はなるべく少ない方が楽ですし、予防した方が時短になるため、手入力する表に対してドロップダウンリストを設定することをおすすめします。
なお、ドロップダウンリスト以外にもExcelでのデータ収集の各種テクニックを拙著で解説していますので、こちらも参考にしてみてください。
また、よりコアな情報を発信していくために「公式LINE」を開始しましたので、ご興味があれば以下バナーから友だち追加をお願いします!
特典として、Excelワークシート関数一覧(計22スライド)やExcelショートカットキー一覧(計25スライド)等をプレゼント!
ご参考になれば幸いですm(_ _)m
「データの入力規則」はかなり多機能で、ドロップダウンリスト以外にもヒューマンエラー防止に役立つ機能が内包されています。
具体的には、エラーメッセージの内容を変更する、セル選択時に入力に関するメッセージを表示する、セルによってIMEの基本設定を変えるといったことが可能です。
これらは別記事で解説予定ですが、必要に応じてドロップダウンリストと併用すると良いでしょう。
データの入力規則の詳細を確認しようと思いサイトを閲覧しました。
以下の意味がわからず質問させてください。
「弱点②は、「元の値」で参照するマスタをテーブルにしたとしても、固定のセル範囲扱いとなってしまい、マスタへレコード追加してもドロップダウンリスト側へ連動しません。」
上記について、通常、マスタをテーブルにしていたら、ドロップダウンリストに反映(自動拡張)されますが、別シートにマスタを置いていたら、ということでしょうか?
お手すきの際、ご回答をお願いいたします。
山中さん
コメントありがとうございます。
こちらは、他の機能だったらテーブルを参照すれば、「テーブル範囲=各機能の参照範囲」の状態になるのに、「データの入力規則」のみテーブルを参照しても固定値扱いになっていしまうという意味でした。
※引用した文の下の文で補足したつもりでした。
よって、同一シートか否かは関係ありません。
連動させる場合は、関数のINDIRECTを用いる必要があります。
詳細は下記の記事をご参照ください。
https://excel-master.net/data-collection/data-validation-rules-drop-down-list-interlocking-table/
ご参考になれば幸いですm(__)m
ご回答ありがとうございます!