- 作成日 : 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でのデータ分析が一段とスムーズになるでしょう。
※ 掲載している情報は記事更新時点のものです。
※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。
関連記事
エクセルでセルを結合して中央揃えするには?ショートカットも解説
エクセルにおいて、複数のセルを結合し、内容を中央揃えにする操作は、見やすい資料作成やデータの整理に役立ちます。このプロセスを理解することで、シート内の情報を効果的に伝えることが可能となります。さらに、時間短縮を図るためのショートカットキーも…
詳しくみるRRI関数の使い方:投資の年平均成長率を計算する方法
RRI関数は、一定期間における投資の年平均成長率(CAGR:年平均成長率)を計算する財務関数です。売上高の成長率分析、投資収益率の評価、人口増加率の計算、資産価値の推移分析など、時系列データの平均的な成長率を求める場面で活用されます。例えば…
詳しくみるエクセルで平均を出す方法の基本と応用
エクセルを使用することで、数値データの平均を簡単に求めることができます。基本的な平均の算出方法から、離れたセルや異なるシートを参照した平均値の計算、更にはゼロを除外して平均を求めるテクニックまで、幅広く解説していきます。それぞれの手法を理解…
詳しくみるFIND関数の使い方や利用シーンをわかりやすく解説
FIND関数は、テキスト内で特定の文字列の位置を探すための非常に便利なツールです。ExcelやGoogleスプレッドシートなどで利用でき、データ分析やレポート作成の際に大いに役立ちます。この記事では、FIND関数の基本的な使い方から実際の利…
詳しくみる日付をシリアル値に変換するDATEVALUE関数の使い方
DATEVALUE関数は、日付をシリアル値(Excelが日付や時刻を数値として扱うための値)に変換するための非常に便利な関数です。この関数を使用することで、テキスト形式の日付を数値として扱うことができ、日付の計算や分析が容易になります。特に…
詳しくみるエクセルのハイパーリンクの挿入・開き方・ショートカットを解説
エクセル作業を効率化するハイパーリンク。右クリックやリボンからの挿入、HYPERLINK関数、ショートカットキー(Ctrl+K)での設定方法から、リンクの編集・削除、開けない時の原因と対処法まで、解説します。 エクセルでハイパーリンクを挿入…
詳しくみる