- 作成日 : 2025年8月5日
エクセルのSIGN関数で符号判定を自動化!使い方と活用例まとめ
数値の符号を判定するなら、エクセルのSIGN関数(サイン関数)が便利です。指定した数値が正なら「1」、負なら「-1」、ゼロなら「0」を返すため、売上の増減判定や条件分岐処理が簡単にできます。
この記事では、SIGN関数の基本から応用例までわかりやすく解説します。
目次
SIGN関数の使い方
SIGN関数の使い方はシンプルです。引数に符号を判定したい数値を指定するだけで、結果が返されます。
基本構文
- 数値:符号を判定したい数値を指定します。これは直接数値や数式を入力しても良いですし、数値が入力されているセルを参照することも可能です。
具体例
以下の表で、SIGN関数の動作を確認しましょう。
数値 | SIGN関数の結果(符号) | 説明 |
---|---|---|
100 | 1 | 正の数なので1を返します。 |
-50 | -1 | 負の数なので-1を返します。 |
0 | 0 | ゼロなので0を返します。 |
12.34 | 1 | 正の小数の場合も1を返します。 |
-98.76 | -1 | 負の小数の場合も-1を返します。 |
セルに入力する場合:
たとえば、セルA1に「100」と入力されている場合、B1に「=SIGN(A1)」と入力すると、「1」が返されます。同様に、A1に「-50」と入力すれば「-1」、A1に「0」と入力すれば「0」が返されます。
SIGN関数の利用シーン
SIGN関数は単独で使われるよりも、他の関数と組み合わせて真価を発揮することが多いです。ここでは、具体的な利用シーンをいくつかご紹介します。
1. 数値の増減に基づいた判定
売上データや成績データなど、数値の増減を把握したい場合にSIGN関数は非常に有効です。
例:売上の前月比を色分け表示する
前月と今月の売上データがあり、増減に応じてセルの色を変えたいとします。
月 | 売上(万円) |
---|---|
4月 | 100 |
5月 | 120 |
6月 | 90 |
- 増減額の算出:たとえば、B3セルに5月の売上(120)、B2セルに4月の売上(100)があるとして、C3セルに「=B3-B2」と入力し、増減額を計算します(この例では「20」)。
- SIGN関数で符号を判定:C3セルの増減額に対して「=SIGN(C3)」を使うと、「1」が返されます。
- 条件付き書式と組み合わせる:このSIGN関数の結果を利用して、下記の通り条件付き書式を設定することで、増減に応じて自動的にセルの色を変えられます。
- SIGN関数の結果が「1」なら緑(増加)
- SIGN関数の結果が「-1」なら赤(減少)
- SIGN関数の結果が「0」なら黄色(変化なし)
これにより、視覚的にデータの傾向を素早く把握できるようになります。
2. 条件分岐の簡素化
IF関数などと組み合わせて、条件分岐をシンプルに記述できます。
例:成績の評価を自動化する
テストの点数があり、前回のテストの得点を基準に、今回のテストの得点が増えているか減っているかを評価します。
A | B | C | D | E | |
---|---|---|---|---|---|
1 | 生徒名 | 前回の得点 | 今回の得点 | 差分 | 評価 |
2 | 田中 | 65 | 75 | 10 | 成長中 |
3 | 鈴木 | 98 | 80 | -18 | 低下中 |
4 | 佐藤 | 74 | 74 | 0 | 横ばい |
=IF((C2-B2)=1,”成長中”,IF(SIGN(C2-B2)=-1,”低下中”,”横ばい”))
点数が前回のテストの結果よりもプラスであれば「成長中」、下降していれば「低下中」など、符号に基づく判定を加えたい場合にSIGN関数が役立ちます。
SIGN関数の応用
SIGN関数は、他の数学関数や論理関数と組み合わせることで、さらに複雑な処理を効率的に行うことが可能です。
1. 絶対値との組み合わせ
SIGN関数とABS関数(絶対値を返す関数)を組み合わせることで、数値の絶対値とその符号を別々に扱えます。
例:数値の符号を保持しつつ、絶対値の計算を行う
たとえば、計算結果の絶対値を使いたいが、元の数値の符号もどこかで考慮したい場合に利用できます。
=SIGN(A1)*ABS(A1) は、元のA1の値をそのまま返します。一見すると無駄に見えますが、複雑な計算式の中で部分的に符号だけを抽出し、その後に絶対値演算を適用するような場合に、式の可読性を高められます。
2. 配列数式での活用
Excelの上級者向けの内容になりますが、SIGN関数は配列数式と組み合わせることで、複数セルのデータを一度に処理する際にも活用できます。
例:条件に合うデータの個数を数える
特定の範囲内の正の数、負の数、ゼロの個数をそれぞれ数える場合などに、SUMPRODUCT関数やCOUNTIFS関数と組み合わせて利用できます。
たとえば、A1:A10の範囲に数値が入っているとして、正の数の個数を数えるには、以下のような数式を使用します。
=SUMPRODUCT(–(SIGN(A1:A10)=1))
この数式は、A1:A10の各セルに対してSIGN関数を適用し、結果が「1」になる場合にTRUE(真)、それ以外の場合にFALSE(偽)を返します。–(二重負演算子)はTRUEを1に、FALSEを0に変換するため、最終的に正の数の合計個数を算出できます。
3. マクロやVBAでの利用
Excel VBA(Visual Basic for Applications)でもSIGN関数は利用できます。VBAコード内で数値の符号に基づいた処理を行いたい場合に活用できます。
Sub CheckSign()
Dim myNumber As Double
myNumber = Range(“A1”).Value ‘ A1セルの値を取得
Select Case Sgn(myNumber) ‘ VBAではSIGN関数ではなくSgn関数を使用します
Case 1
MsgBox “A1セルの値は正の数です。”
Case -1
MsgBox “A1セルの値は負の数です。”
Case 0
MsgBox “A1セルの値はゼロです。”
End Select
End Sub
このVBAコードでは、シート上のA1セルの値を取得し、VBAのSgn関数(ExcelのSIGN関数に相当)を使って符号を判定し、その結果に応じたメッセージボックスを表示します。
SIGN関数の活用でExcelの符号判定をもっとスマートに!
ExcelのSIGN関数は、数値の符号(正・負・ゼロ)を瞬時に判定できるシンプルかつ強力な関数です。売上の増減や条件分岐の整理、条件付き書式での色分けなど、幅広い用途で活躍します。さらに、IF関数やABS関数、配列数式、VBAと組み合わせることで、より高度な処理や自動化にも対応可能です。
この記事で紹介した使い方を参考に、SIGN関数を業務に取り入れれば、Excelでのデータ分析が一段とスムーズになるでしょう。
※ 掲載している情報は記事更新時点のものです。
※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。
関連記事
Excel帳票とは?利用できる機能や帳票作成ツールを解説
請求書、見積書、報告書、勤怠表など、多くの企業では帳票をExcelで作成・管理しています。本記事では、Excel帳票とは何か、その概要から活用事例、最新のExcel機能やExcelと連携できる帳票ツールについて解説します。加えて、帳票作成時…
詳しくみるエクセルで表示を拡大・縮小する方法とショートカット
この記事では、エクセル初心者の方でも簡単に理解できるように、表示を拡大・縮小させるための様々な方法を徹底解説します。基本的なショートカットキーから、知っておくと便利なテクニック、そして拡大・縮小がうまくいかない場合の対処法まで、幅広くご紹介…
詳しくみるエクセルのシート名を一括変更するには?
エクセルで複数のシートを扱う際、シート名の整理は効率的な作業に不可欠です。しかし、シートの数が多くなると、一つ一つ名前を変更したり、新しいシートを追加して名前を付けたりする作業は、時間と手間がかかります。この記事では、エクセル初心者の方でも…
詳しくみるUNIQUE関数の使い方や注意点をわかりやすく解説
UNIQUE関数は、データの重複を排除し、一意の値のみを抽出することができる、非常に便利な関数です。特にデータ分析やレポート作成時に、効率的に必要な情報を整理するために役立ちます。この記事では、UNIQUE関数の基本的な使い方から、実際の利…
詳しくみる名刺管理をエクセルで簡単に!テンプレートやマクロの活用ポイントも解説
名刺は貴重なビジネス資産ですが、管理が面倒で後回しになりがちです。しかし、エクセルを使えば誰でも簡単に、効率的な名刺管理が実現できます。 この記事では、エクセルで名刺管理を行うメリットや、初心者でもすぐに実践できる具体的な手順を、テンプレー…
詳しくみるエクセルで日数計算する方法まとめ
エクセルは、日付に関連する計算を簡単に行うための強力なツールです。日数計算を正確に行うことは、ビジネスやプロジェクト管理において非常に重要です。本記事では、エクセルを使用して日数を計算するためのさまざまな方法を詳しく解説します。初日を含めた…
詳しくみる