経緯
Excelで数値の入力ミスを防ぐために、「B1セルの値がA1セルの値から±5%以上乖離していたら、エラーメッセージを表示する」という仕組みを導入したいと考えました。
ただし、VBAは使わずに実現したいという前提があったため、今回は「データの入力規則」機能を使って対応する方法を学びました。
使用する機能:データの入力規則(ユーザー設定)
Excelでは「データの入力規則」を使うことで、特定条件を満たさない入力に対してエラーメッセージを表示することができます。VBAを使わずとも、簡単な数式だけで目的の制御が可能です。
手順:±5%の範囲を超えた場合にエラーメッセージを出す
1. Excelを開く
まず、Excelを開きます。
2. B1セルを選択
乖離チェックを行いたい B1セル をクリックして選択します。
3. データタブをクリック
Excelの上部メニューから「データ」タブを選びます。
4. 「データの入力規則」をクリック
リボンの中にある「データの入力規則」をクリックします。
出てきたメニューから、再度「データの入力規則」を選択してください。
5. 「ユーザー設定」の数式を入力
「設定」タブを選び、「入力値の種類」のプルダウンから「ユーザー設定」を選択します。
続いて「数式」欄に、次のように入力します。
=AND(B1>=A1*0.95, B1<=A1*1.05)
この式は「B1の値がA1の値の±5%以内であるか」を判定しています。
条件を満たさない値が入力された場合にエラーと見なされます。
6. エラーメッセージの設定
次に、「エラーメッセージ」タブを開きます。
- 「タイトル」欄に任意の見出し(例:「入力エラー」)を入力
- 「エラーメッセージ」欄に警告内容(例:「A1の値から±5%以内の値を入力してください」)を入力
入力が完了したら「OK」をクリックします。
結果の確認
これで設定は完了です。
実際にB1セルに A1の±5%以外の値 を入力してみてください。設定したエラーメッセージが表示されるはずです。
補足:この方法のメリットと注意点
- VBAを使用しないため、環境に依存せず誰でも使える
- 数式を使った制限なので、リアルタイムにバリデーションがかかる
- 「入力規則」はコピー&貼り付けで別のセルにも適用可能
ただし、対象セルの値が数式で計算されている場合は、手動入力ではないため制限が働かない場合があります。その点はご注意ください。
まとめ
今回は、VBAを使わずにExcelの「データの入力規則」機能を活用して、B1セルにA1セルの±5%以内の値しか入力できないように制限する方法を紹介しました。
入力値の妥当性をリアルタイムでチェックできるため、人為的なミスの予防に効果的です。
シンプルな数式だけで十分なバリデーションが可能ですので、ぜひご活用ください。
最後までお読みいただきありがとうございました。