excel

【Excel】エクセルのABS関数の使い方(絶対値を求める)

エクセルのABS関数の基本入力 - セル参照でABS関数を入力する手順
当サイトでは記事内に広告を含みます

エクセルで売上の増減額、予算との差額、測定値の誤差などを計算すると、結果がマイナスになることがあります。

差の大きさだけを比較したい場面では、プラスかマイナスかという方向ではなく、数値の絶対値を取り出せるABS関数が便利です。

ABS関数は構文が短く、四則演算やIF関数、条件付き書式とも組み合わせやすいため、実務用の表でも幅広く利用できます。

ABS関数の基本ポイント

・ABS関数は負の数を正の数へ変換します。

・正の数とゼロはそのまま返します。

・差額や誤差など、符号を除いた大きさを求める計算に向いています。

この記事では、エクセルのABS関数の入力方法から、セル参照、差額計算、IF関数との組み合わせまでを順に解説します。

数式をコピーする際の注意点も確認し、見やすく間違いにくい表を作れるようにしましょう。

 

エクセルのABS関数の基本入力

それではまず、ABS関数で絶対値を求める基本的な入力方法について解説していきます。

A B
1 数値 絶対値
2 -125 =ABS(A2)
3 48 =ABS(A3)

 

ABS関数の構文と絶対値の考え方

ABS関数の構文は、ABS(数値)です。

=ABS(数値)

数値には、直接入力した数値、セル番地、別の計算式を指定できます。

数学でいう絶対値とは、数直線上でゼロからどれだけ離れているかを表す値です。

たとえば、マイナス125はゼロより左側に125離れた位置にあり、125はゼロより右側に125離れた位置にあります。

どちらもゼロからの距離は125であるため、ABS関数の結果は125になります。

セルA2に-125が入力されている場合、セルB2へ=ABS(A2)と入力すると、表示される結果は125です。

反対に、セルA3に48が入っているとき、=ABS(A3)の結果は48になります。

ABS関数は、正の数をさらに大きくする関数ではありません。

正の数はそのまま保持し、負の数だけを正の数へ変換する働きです。

ゼロを指定した場合の結果もゼロであり、空白セルを参照した場合は通常ゼロとして扱われます。

ただし、セルに文字列が入っている場合は、計算できないためエラーになることがあります。

数値を扱う列なのに文字列として保存されたデータが混在していると、意図しない結果になりやすいため注意が必要です。

売上実績と目標の差、在庫数の過不足、温度の基準値からのずれなどは、プラスとマイナスの意味が異なります。

一方で、差の大きさだけを知りたい集計では、符号が付いたままでは比較しにくくなる場合があります。

そのようなときにABS関数を使えば、増えた場合と減った場合を同じ基準で確認できます。

たとえば誤差が-3と4の二つあるとき、そのまま比べると4のほうが大きく見えるだけでなく、-3の位置づけが分かりにくいこともあります。

ABS関数を使うと3と4になり、誤差の大きさとして素直に比較できるようになります。

なお、ABSという名前はabsolute value、つまり絶対値に由来します。

関数名を覚えるときは、負の符号を外して数値の大きさを取り出す関数と理解すると覚えやすいでしょう。

【操作のポイント】ABS関数では、必ず半角のイコール記号から入力し、数値または数値が入ったセルをかっこの中に指定します。

 

セル参照でABS関数を入力する手順

続いては、セルを参照してABS関数を入力する具体的な手順を確認していきます。

例として、A列に差額が入力され、B列に差額の絶対値を表示する表を作成します。

まず、1行目には見出しとしてA1へ数値、B1へ絶対値と入力します。

2行目以降のA列へ、-125、48、-9、0などの数値を入力してください。

エクセルのABS関数の基本入力 - セル参照でABS関数を入力する手順

次に、結果を表示したいセルB2をクリックします。

キーボードから=ABS(A2)と入力し、Enterキーを押しましょう。

B2には125と表示され、A2のマイナス記号が除かれたことを確認できます。

数式を直接入力する代わりに、B2へ=ABS(まで入力した後、A2をクリックして参照先を指定しても構いません。

セルをクリックすると、数式内へA2という番地が自動入力されます。

続けて閉じかっこを入力し、Enterキーを押せば数式が完成します。

参照するセルをクリックして指定する方法は、列や行が多い表で番地を打ち間違えにくい操作です。

数式バーの左側にあるfxの近くでも、選択したセルの数式を確認できます。

結果の125を選択して数式バーを見ると、表示結果ではなく=ABS(A2)という計算式が入っていることが分かります。

この違いは、計算結果の意味を確認したいときに大切です。

セルに125だけを直接入力すると、元のA2の値が変わってもB2は自動更新されません。

一方、ABS関数を使った数式なら、A2を-300へ変更した瞬間にB2も300へ再計算されます。

毎月更新する報告書や、入力値が随時変わるチェック表では、この自動更新が大きな利点になります。

数式を入力した後、B2の左上に緑の三角形が表示された場合は、数値の形式や数式の不整合に関する通知かもしれません。

表示された警告アイコンを確認し、文字列として保存された数字がないかを見直しましょう。

また、全角の丸かっこや全角のイコール記号を使うと、エクセルは数式として認識できません。

数式では半角文字を使うことが基本です。

関数名のABSは大文字でも小文字でも入力できますが、入力後にエクセルが標準表記へ自動変換することがあります。

入力の見た目が変わっても、計算内容が変わるわけではありません。

【操作のポイント】数式を作るセルを先に選び、=ABS(と入力してから参照元のセルをクリックすると、セル番地の入力ミスを抑えられます。

 

数式をオートフィルでコピーする方法

続いては、ABS関数を複数行へコピーするオートフィルの使い方を確認していきます。

A列に多数の数値が並ぶ場合、一行ずつ=ABS(A2)、=ABS(A3)と入力する必要はありません。

最初の結果セルに数式を作り、フィルハンドルを使って下へコピーすれば効率的です。

たとえばA2からA20まで数値がある場合、まずB2に=ABS(A2)を入力します。

B2をクリックすると、セル右下に小さな四角形が表示されます。

これがフィルハンドルです。

フィルハンドルへマウスポインターを合わせ、黒い十字形に変わったことを確認してください。

そのまま下方向へドラッグしてB20まで移動すると、各行へ数式がコピーされます。

B3には=ABS(A3)、B4には=ABS(A4)というように、行番号が自動的に変化します。

このように、コピー先に応じてセル番地が変わる参照を相対参照と呼びます。

隣の列にデータが連続している場合は、フィルハンドルをダブルクリックする方法も便利です。

ダブルクリックすると、隣接するデータの末尾付近まで数式が自動コピーされます。

ただし、A列の途中に完全な空白行があると、その位置でコピーが止まることがあります。

空白行を含む表では、ドラッグでコピー範囲を明示するか、コピーと貼り付けを利用するほうが確実です。

キーボード操作なら、B2をコピーし、B3からB20を選択して貼り付ける方法も使えます。

貼り付け後は、最後の行の数式を数式バーで確認しましょう。

参照先がA20になっていれば、コピーは正しく行われています。

数式をコピーしたのに同じ結果が繰り返される場合は、セル番地にドル記号が付いていないかを確認してください。

たとえば=ABS($A$2)は、どこへコピーしても常にA2だけを参照します。

同じ基準セルの絶対値を各所に表示したい場合には便利ですが、行ごとの値を処理する用途には向きません。

通常の一覧表では、=ABS(A2)のようにドル記号を付けない式を使うのが基本です。

コピー後のセルにゼロが多く表示される場合は、参照元に空白セルが含まれている可能性があります。

空白を表示したくない場合は、後述するIF関数との組み合わせで対処できます。

【操作のポイント】最初の数式を一つ正しく完成させてからオートフィルすると、行ごとの参照先を自動的に調整できます。

 

ABS関数で差額と誤差を求める方法

続いては、ABS関数を使って差額や誤差の大きさを求める方法を確認していきます。

A B C
1 目標 実績 差額の絶対値
2 1000 920 =ABS(B2-A2)

 

目標値と実績値の差額計算

ABS関数で差額と誤差を求める方法 - 目標値と実績値の差額計算

差額を求める表では、単純に実績から目標を引くと、達成状況によってプラスまたはマイナスの結果になります。

たとえば、目標が1000、実績が920の場合、=B2-A2の計算結果は-80です。

マイナス80という結果は、実績が目標を80下回ったことを示すため、進捗管理では重要な情報になります。

しかし、達成か未達かを区別せず、目標からどれだけ離れているかだけを比較したい場合には、ABS関数が役立ちます。

=ABS(B2-A2)

B2の実績からA2の目標を引き、その結果の絶対値を返す数式です。

この数式の結果は80です。

実績が1080であった場合、通常の差額は80になり、ABS関数の結果も80です。

実績が920であった場合も、通常の差額は-80ですが、ABS関数の結果は80になります。

つまり、目標を上回った場合と下回った場合のどちらでも、差の大きさを同じ形式で記録できます。

営業担当者ごとの予算差、発注数と納品数の差、予定時間と実績時間の差などを一覧で比較する際に便利です。

一方で、ABS関数だけを表示すると、達成したのか未達だったのかという方向性が見えなくなります。

そのため、実務では符号付きの差額列と、絶対値の差額列を分けて作る方法もおすすめです。

たとえばC列に=B2-A2を入力して増減額を表示し、D列に=ABS(C2)を入力して差の大きさを表示します。

こうすると、C列でプラスとマイナスの意味を確認し、D列で影響の大きい行を並べ替えることができます。

直接=ABS(B2-A2)と書く方法は列数を減らせますが、途中計算を確認しにくくなる場合があります。

誰かと共有する表や後から修正する可能性がある表では、補助列を作るほうが分かりやすいこともあります。

差額計算では、引き算の順序を逆にしてもABS関数の最終結果は同じです。

=ABS(A2-B2)としても、=ABS(B2-A2)としても、絶対値は80になります。

ただし、ABS関数を外した差額も使う予定があるなら、実績-目標というように列全体で計算順序を統一しましょう。

統一されたルールは、数式の確認や別の担当者への引き継ぎを容易にします。

【操作のポイント】達成方向も必要な表では、符号付き差額とABS関数による差額の大きさを別列に分けて管理します。

 

測定値の誤差を確認する計算

ABS関数で差額と誤差を求める方法 - 測定値の誤差を確認する計算

続いては、基準値と測定値の誤差をABS関数で確認する計算について解説していきます。

製品の寸法、温度、重量、作業時間などでは、基準値からのずれを管理することがあります。

基準値が10.00で、実測値が9.96の場合、実測値-基準値の結果は-0.04です。

この値には、基準より小さいという意味があります。

ただし、許容範囲がプラスマイナス0.05であるとき、判定に必要なのは符号よりも誤差が0.05以内かどうかです。

そこで、=ABS(実測値セル-基準値セル)という式を使います。

基準値をA2、実測値をB2に入力した場合、C2へ=ABS(B2-A2)を入力すると誤差の大きさが求められます。

実測値が9.96ならC2は0.04となり、実測値が10.04でもC2は同じ0.04となります。

基準値より高いか低いかに関係なく、許容範囲から判定できる状態になります。

小数を扱うと、画面上は0.05と表示されていても、内部の計算値がわずかに異なることがあります。

とくに他の計算結果を参照した場合、表示桁数と実際の値が一致しないことがあります。

表示上の数値だけで合否を判断したい場合は、ROUND関数で丸める方法も検討しましょう。

たとえば小数第2位までで誤差を管理するなら、=ROUND(ABS(B2-A2),2)と入力します。

この式では、ABS関数で誤差の大きさを出した後、小数第2位までに丸めます。

ただし、丸めてから判定するのか、元の精密な値で判定するのかは、測定ルールに従う必要があります。

品質管理表では、規格書や社内基準と異なる丸め方を独自に採用しないことが重要です。

誤差の列を作った後は、数値の大きい順に並べ替えると、基準から離れたデータを見つけやすくなります。

ABS関数の結果はすべてゼロ以上なので、降順で並べ替えるだけで確認優先度を決められます。

グラフへ表示する場合も、誤差の絶対値だけを系列にすると、変動の大きさを直感的に把握しやすくなります。

【操作のポイント】許容差との比較では、ABS関数で符号を除いた誤差を作り、基準値以下かどうかを判定します。

 

日付と時刻の差を絶対値で扱う方法

続いては、日付や時刻の差をABS関数で扱う方法を確認していきます。

エクセルでは日付と時刻も数値として保存されているため、引き算を使って差を求められます。

たとえば予定日がA2、実績日がB2にあり、予定より早い場合も遅い場合も日数差だけを表示したいとします。

C2へ=ABS(B2-A2)と入力すると、予定日から何日ずれているかを正の数で表示できます。

予定日より二日早い場合でも二日遅い場合でも、結果は2です。

日付セルの表示形式が日付のままだと、結果が1900年の日付のように見えることがあります。

これは日数の数値を日付形式で表示しているためです。

結果セルを選択し、ホームタブの表示形式から標準または数値を選ぶと、日数として確認できます。

時刻の差を計算する場合も考え方は同じです。

開始時刻と終了時刻の順序が逆になる可能性があり、差の大きさだけを取得したいなら=ABS(B2-A2)を使えます。

ただし、日付をまたぐ深夜勤務などでは、終了時刻だけを引くと正しい勤務時間にならない場合があります。

開始日時と終了日時を日付と時刻を含む値として入力するか、日またぎを考慮した別の計算式を使う必要があります。

ABS関数は計算結果の符号を正にする関数であり、日付や時刻の入力漏れを補正するものではありません。

空白セルがあるとゼロとして扱われ、非常に大きな日数差が出ることもあります。

入力途中の行を含む表では、IF関数で空白を確認してから計算する方法が安全です。

また、納期の遅れと前倒しを区別したい管理表では、ABS関数の結果だけでは判断できません。

別列で=B2-A2の符号付き日数を残し、絶対値の列と併用すると、ずれの方向と大きさを両方確認できます。

予定調整の優先順位を付ける際には絶対値、原因分析では符号付きの差というように使い分けるとよいでしょう。

【操作のポイント】日付差の結果は数値形式で表示し、前倒しか遅延かも必要な場合は元の差額列を残します。

 

ABS関数とIF関数を組み合わせる方法

続いては、ABS関数とIF関数を組み合わせ、条件に応じて表示や判定を変える方法を確認していきます。

A B C
1 基準値 実測値 判定
2 100 104 =IF(ABS(B2-A2)<=5,”OK”,”要確認”)
誤差判定.xlsx – Excel − □ ×
ファイル ホーム 挿入 ページ レイアウト 数式 データ 校閲 表示
貼り付けΣ オートSUM中央揃え
fx=IF(ABS(B2-A2)<=5,”OK”,”要確認”)
A B C
1 基準値 実測値 判定
2 100 104 OK
C2に判定式を入力 ←

 

許容範囲内かどうかを判定する数式

ABS関数は、一定の範囲に収まっているかを判定する式で特に活用しやすい関数です。

基準値がA2、実測値がB2、許容される差が5である場合を考えます。

誤差がプラス5以内またはマイナス5以内ならOKと表示し、それ以外なら要確認と表示したい場面です。

この場合は、=IF(ABS(B2-A2)<=5,”OK”,”要確認”)と入力します。

IF関数の条件部分にABS(B2-A2)<=5を指定します。

実測値と基準値の差の絶対値が5以下ならOK、5より大きければ要確認を返す式です。

実測値が104なら差は4であり、ABS関数の結果も4なのでOKと表示されます。

実測値が96なら通常の差額は-4ですが、ABS関数の結果は4となるため、同じくOKです。

実測値が106の場合は誤差が6となり、許容値5を超えるので要確認と表示されます。

ABS関数を使わずに=B2-A2<=5と書くと、実測値が大幅に低い場合も条件を満たしてしまいます。

たとえば実測値が80なら差額は-20であり、-20は5以下なので、本来は異常でもOKと判定される危険があります。

誤差の上限と下限を一つの式で正しく判定するために、ABS関数が必要になるわけです。

許容値をセルに入力して管理するなら、たとえばD1に5を入力し、=IF(ABS(B2-A2)<=$D$1,”OK”,”要確認”)とします。

この方法なら、規格変更で許容値が変わってもD1を書き換えるだけで全行の判定を更新できます。

ドル記号を付けた$D$1は、数式を下方向へコピーしてもD1を固定して参照する絶対参照です。

判定結果を色分けしたい場合は、条件付き書式を追加し、要確認という文字を含むセルに赤い塗りつぶしを設定できます。

数式による文字判定と視覚的な色分けを組み合わせると、確認が必要な行を見落としにくくなります。

ただし、OKと表示された値でも入力ミスの可能性が完全になくなるわけではありません。

基準値、実測値、許容値の入力元が正しいことを確認したうえで、判定式を使いましょう。

【操作のポイント】上下どちら方向のずれも同じ許容範囲で判定したいときは、IF関数の条件式の中へABS関数を入れます。

 

空白セルでは結果を表示しない数式

続いては、入力されていない行でゼロや不要な判定を表示しない方法を確認していきます。

一覧表をあらかじめ多めの行数で作っていると、未入力行にも数式がコピーされていることがあります。

単純に=ABS(B2-A2)と入力すると、A2とB2が両方空白の行ではゼロが表示されます。

ゼロが多数並ぶと、まだ入力していない行なのか、本当に誤差がゼロなのかを判別しにくくなります。

この場合は、IF関数で空白かどうかを確認してからABS関数を実行します。

=IF(OR(A2=””,B2=””),””,ABS(B2-A2))

A2またはB2が空白なら空白を返し、両方に値がある場合だけ絶対値を計算します。

OR関数は、複数の条件のうち一つでも成立したときにTRUEを返す関数です。

この数式では、A2が空白、またはB2が空白であれば、結果セルには空の文字列が表示されます。

空の文字列は見た目には空白であり、数値のゼロとは異なります。

基準値だけ入力されて実測値が未入力という状況でも、誤差を誤って計算しない点が利点です。

判定列にも同じ考え方を適用できます。

たとえば、=IF(OR(A2=””,B2=””),””,IF(ABS(B2-A2)<=5,”OK”,”要確認”))と入力します。

この式は少し長くなりますが、未入力時は空白、入力済みならOKまたは要確認を表示できます。

数式が長くなったときは、かっこの対応関係を確認することが大切です。

まず外側のIF関数で空白判定を行い、その偽の場合の処理として内側のIF関数を置く構造です。

エクセルで数式を入力中にかっこを選択すると、対応するかっこが示されるため活用しましょう。

空白の代わりに未入力と表示したい場合は、二つ目の引数を”未入力”に変更できます。

ただし、後で数値だけを抽出したり並べ替えたりする表では、文字列が混在することに注意が必要です。

計算結果の列を集計する場合は、空白を返す形式のほうが扱いやすいことが多いでしょう。

入力漏れを目立たせたい場合は、別途条件付き書式で入力必須セルを色付けする方法もあります。

【操作のポイント】未入力行を含む表では、ABS関数の前にIF関数で空白を確認し、ゼロと未入力を区別します。

 

ABS関数を使う際のエラーと注意点

続いては、ABS関数を使用する際に起こりやすいエラーと確認したい注意点を解説していきます。

A B
1 入力値 ABS関数の結果
2 -15 =ABS(A2)
3 未確認 エラーの可能性

 

文字列やエラー値を参照した場合

ABS関数の引数には、計算できる数値を指定する必要があります。

セルに-15や25.5のような数値が入っていれば、ABS関数は問題なく絶対値を返します。

一方で、参照先に未確認、対象外、確認中などの文字が入っていると、ABS関数は数値として計算できずエラーを返すことがあります。

データを外部システムから取り込む表では、数値列に文字列が混ざるケースが少なくありません。

見た目が数字であっても、セルの配置が左寄せになっていたり、エラー表示の緑三角が出ていたりする場合は、文字列として保存されている可能性があります。

文字列の数字を数値へ変換するには、警告アイコンから数値に変換を選ぶ方法があります。

セルの表示形式を数値にするだけでは、文字列が必ず数値へ変換されるわけではない点に注意してください。

データの先頭や末尾に余分な空白が含まれていることもあります。

その場合はTRIM関数やVALUE関数などを使い、元データを整える方法を検討します。

ただし、元データに単位や注記が混じっている場合は、機械的に変換する前にデータの意味を確認しましょう。

すでに参照元セルが#VALUE!や#DIV/0!などのエラーになっている場合、ABS関数はそのエラーを引き継ぎます。

ABS関数が原因ではなく、参照元の計算式に問題があることも多いためです。

エラーが出たときは、数式バーでABS関数が参照しているセルを確認し、そのセルへ移動して元の数式や値を確認してください。

表示だけを空白にしたい場合は、IFERROR関数と組み合わせる方法があります。

たとえば=IFERROR(ABS(A2),””)と入力すると、計算エラー時には空白を返します。

ただし、エラーを非表示にすると、入力不備に気付きにくくなるおそれもあります。

重要な管理表では、エラーを隠すより、別列で入力状態を確認するほうが安全な場合があります。

【操作のポイント】ABS関数でエラーが出た場合は、まず参照先が数値かどうか、元のセルにエラーがないかを確認します。

 

符号の情報を失わないための使い分け

ABS関数を使うと、負の数はすべて正の数へ変わります。

これは絶対値を求める目的には便利ですが、もとの符号が持つ意味を失うことにもつながります。

たとえば収支の表でマイナスは赤字、プラスは黒字を表すことがあります。

この列をABS関数で処理すると、赤字も黒字も正の金額になり、状態を判別できなくなります。

そのため、方向性が重要な数値は元の列を残し、比較用にABS関数の列を追加することが基本です。

予算との差額であれば、差額列には=実績-予算を入れ、別の差額規模列に=ABS(差額セル)を入れる構成が分かりやすいでしょう。

この構成なら、プラスなら予算超過、マイナスなら予算未達といった意味を保ちながら、影響額の大きい順にも並べ替えられます。

条件付き書式を利用し、元の差額列のマイナスだけを赤字にする方法も有効です。

絶対値列は棒グラフやランキングに使い、差額列は原因分析に使うなど、列ごとに役割を決めると表が読みやすくなります。

ABS関数は、マイナスの値を誤りとして修正する関数ではありません。

負の数そのものが必要な情報か、それとも差の大きさだけが必要な情報かを判断してから使いましょう。

また、負数をゼロにしたいだけなら、ABS関数は適しません。

たとえば-10を0にし、5は5のままにしたい場合は、=MAX(A2,0)のような別の数式を使います。

ABS関数では-10が10になってしまうため、意図と異なる結果になるからです。

計算式を選ぶ際は、負数を正数へ反転させたいのか、負数を除外したいのかを分けて考えることが大切です。

目的を明確にすると、関数の選択ミスを防げます。

【操作のポイント】ABS関数の結果だけでは増減の方向が分からないため、必要に応じて符号付きの元データや差額列を併記します。

 

まとめ エクセルのABS関数の使い方

エクセルのABS関数は、数値の符号を除き、ゼロからの距離である絶対値を求める関数です。

基本の式は=ABS(数値)であり、負の数は正の数へ変換され、正の数とゼロはそのまま返されます。

目標と実績の差額、基準値と測定値の誤差、予定と実績の日数差など、差の大きさを比較したい場面で活用できます。

許容範囲の判定では、=IF(ABS(B2-A2)<=5,”OK”,”要確認”)のようにIF関数と組み合わせると、プラス側とマイナス側の両方を同じ基準で判定できます。

未入力行を含む表では、IF関数で空白を確認してから計算すると、不要なゼロ表示を防げます。

一方でABS関数を使うと、増加か減少か、基準より高いか低いかといった符号の情報は失われます。

方向も必要な表では、元の差額列を残し、ABS関数の列を比較用として追加しましょう。

セル参照で最初の式を作成し、オートフィルで下へコピーすれば、多数のデータにも効率よく適用できます。

ABS関数を正しく使い、数値のずれや差額を見やすく整理していきましょう。