スプレッドシートを開発しているときに、ユーザーが特定のセルに入れることができるものを制限したい場合があります。たとえば、セル内のエントリの長さが正確に4文字で、数字の6で始まり、その後に任意の数字、文字、そして任意の数字が続くことを確認したい場合があります。

このような検証を行うには、3つの方法があります。もちろん、1つ目は、入力をチェックし、エントリが目的のパターンに従っていることを確認するマクロを作成することです。このようなマクロを作成する方法は、ExcelTipsの他の問題で取り上げられています。

マクロを使用しない別の方法は、Excelのデータ検証機能に依存することです。有効なエントリの数がそれほど長くない場合は、次の一般的な手順を試してください。

。空白のワークシートで、有効なエントリのリストを作成します。

。入力に使用するワークシートで、エントリが作成されるセルを強調表示します。

。リボンの[データ]タブを表示します。

。 [データツール]グループの[データ検証]ツールをクリックします。 Excelに[データ検証]ダイアログボックスが表示されます。 (図1を参照)

。 [許可]ドロップダウンリストを使用して、[リスト]を選択します。

。 [ソース]ボックスに挿入ポイントを指定して、手順1でまとめたリストを選択します。

。 [OK]をクリックします。

これで、許容値のリストに含まれていないデータを誰かが入力しようとすると、検証ルールが有効になり、ユーザーは入力を変更する必要があります。

データ検証機能を少し異なる方法で使用することもできます。データエントリに対して明確に定義されたルールがある場合は、有効なエントリを説明する式をまとめることができます。以下はそのような式の1つです:

=AND((LEN(A1)=4),(LEFT(A1,1)="6"),(ISNUMBER(VALUE( (MID(A1,2,1))))),(CODE(MID(UPPER(A1),3,1))>64),(CODE( MID(UPPER(A1),3,1))<91),(ISNUMBER(VALUE((MID(A1,4,1))))))

これは単一の数式であり、次の一般的な手順を使用して、すべて1行に入力されることに注意してください。

。エントリが作成されるセルを強調表示します。 (上記の数式は、セルA1を使用していることを前提としています。別のセルを選択した場合は、上記の数式に適切な参照変更を加える必要があります。)

。リボンの[データ]タブを表示します。

。 [データツール]グループの[データ検証]ツールをクリックします。 Excelに[データ検証]ダイアログボックスが表示されます。

。 [許可]ドロップダウンリストを使用して、[カスタム]を選択します。

。上記の数式を[数式]ボックスに入力します。 (すべて1行、スペースなし。)

。 [OK]をクリックします。

A1の内容により、[OK]をクリックするとエラーが発生する場合があります。

(Excelは、A1の内容がルールに従って検証されないことを通知しようとする場合があります。)これは問題ありません。設定している検証ルールは、誰かがセルに何かを入力しようとしたときに機能します。

数式は基本的に、作成中のエントリを分解し、各文字が範囲内にあるかどうかを判断します。そうでない場合、式の結果はFALSEになり、検証ルールが機能します。

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(11212)は、Microsoft Excel 2007および2010に適用されます。Excelの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。