誰でも入力できるExcelでは、入力ミスを防ぐためにデータの入力規則を設定しています。しかし入力規則は、貼り付けやオートフィルで入れた値はチェックしません。
実務では、プルダウンで選ぶ店舗がオートフィルで別の店舗コードに変わり、そのExcelを参照している別の資料の数値がずれたことがありました。この記事では、そのときの話と、実際に入れた対策を紹介します。
設定していた入力規則
日付の欄
日付の欄に、日付以外の文字列が入力されたことがあったため、入力規則を設定しました。
- 日付の列を選び、[データ]→[データの入力規則]を開く
- [入力値の種類]を「日付」、[データ]を「次の値以上」、[開始日]を「2026/1/1」にする
- [エラーメッセージ]タブの[スタイル]を「停止」にする
「停止」にしておくと、ルールに合わない値を入力したときにエラーが出て、その値は入力できません。
店舗の欄
店舗は、「101:本店」のように店舗コードと店舗名をつなげた候補から、プルダウンで選ぶようにしていました。候補にない値を入力すると、エラーになります。
プルダウンの作り方は、こちらの記事でも紹介しています。

入力規則をすり抜ける2つのケース
入力規則がチェックするのは、セルに直接入力したときと、プルダウンから選んだときだけです。次の2つの場合は、エラーが出ずに入ってしまいます。
貼り付け
別のセルからコピーして貼り付けると、値と一緒に入力規則も上書きされます。そのため、日付の欄に文字列を貼り付けてもエラーにならず、そのセルの入力規則もなくなります。
オートフィル
セルの右下の小さな四角を下にドラッグすると、上のセルを下にコピーできます。ただし、文字の中に数字があると、その数字が1つずつ増えます。
「101:本店」を下にドラッグすると、次のようになります。
| 店舗 |
|---|
| 101:本店 |
| 102:本店 |
| 103:本店 |
「102:本店」「103:本店」はプルダウンの候補にはありませんが、オートフィルではエラーが出ません。店舗名は本店のままなので、見ただけでは気づきにくい変化です。
実務では、このExcelを別のExcelからパワークエリで参照していました。「数値がずれる」と報告があり、調べたところ、オートフィルで店舗コードが変わっていたことが分かりました。パワークエリ側では店舗コードで集計していたため、別の店舗の数値として数えられていました。
対策:店舗コードと店舗名が合っているかを式で確かめる
誰でも入力するExcelなので、入力する人全員に「オートフィルを使わないで」とお願いするのは難しいです。そこで、店舗コードと店舗名の組み合わせが合っているかを式で確かめ、合っていないときはセルを赤くするようにしました。この方法なら、貼り付けでもオートフィルでも、入力した人がその場で気づけます。
店舗マスター
店舗コードと店舗名の表を、「店舗マスター」という名前のテーブルにしておきます。店舗コードは数値です。
| 店舗コード | 店舗名 |
|---|---|
| 101 | 本店 |
| 102 | 駅前店 |
| 103 | 郊外店 |
確かめる式
店舗がB列にある場合、別の列(ここではD列)に次の式を入れます。
=IF(B2="","",XLOOKUP(LEFT(B2,3)*1,店舗マスター[店舗コード],店舗マスター[店舗名],"")=MID(B2,5,100))
式の中身は次のとおりです。
LEFT(B2,3)で、先頭の3桁の店舗コードを取り出す- LEFT関数の結果は文字列なので、
*1で数値にしてから、XLOOKUP関数で店舗マスターの店舗名を取り出す MID(B2,5,100)で、「:」の後ろの店舗名を取り出す- 2つの店舗名が同じならTRUE、違えばFALSEになる
- B2が空のときは、何も表示しない
文字列の数字を *1 で数値にする方法は、こちらの記事で紹介しています。

先ほどの例では、次のようになります。
| 店舗(B列) | 確認(D列) |
|---|---|
| 101:本店 | TRUE |
| 102:本店 | FALSE |
| 103:本店 | FALSE |
102の店舗名は駅前店、103は郊外店なので、本店と合わずFALSEになります。
合わないときに赤くする
最後に、条件付き書式でFALSEの行の店舗のセルを赤くします。
- 店舗の列(B2から下)を選び、[ホーム]→[条件付き書式]→[新しいルール]を開く
- 「数式を使用して、書式設定するセルを決定」を選ぶ
- 数式に
=$D2=FALSEと入力する - [書式]で塗りつぶしを赤にする
これで、オートフィルや貼り付けで店舗コードと店舗名が合わなくなったセルが、赤く表示されます。
まとめ
- 入力規則は、直接入力したときとプルダウンから選んだときしかチェックしない
- 貼り付けると、入力規則ごと上書きされる
- 文字の中に数字があると、オートフィルで数字が増え、エラーも出ない
- 対策として、店舗コードと店舗名が合っているかを式で確かめ、合わないときは赤くする
