【Excel】VBAを使わずに±5%の乖離でエラーメッセージを表示する方法

目次

経緯

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%以内の値しか入力できないように制限する方法を紹介しました。
入力値の妥当性をリアルタイムでチェックできるため、人為的なミスの予防に効果的です。

シンプルな数式だけで十分なバリデーションが可能ですので、ぜひご活用ください。

最後までお読みいただきありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次