「50%」と入力したつもりが「50」のまま。パーセント表示にしたいのに数値が変わらないですよね。
スプレッドシートで数値をパーセント値に変換するとき、手動で100で割っていませんか? その操作、関数ひとつで解決できますよ。
UNARY_PERCENT関数を使えば、値を100で割った結果を返してくれます。引数はひとつだけのシンプルな関数です。
この記事では、スプレッドシートのUNARY_PERCENT関数の基本から実務での使いどころまで紹介します。
スプレッドシートのUNARY_PERCENT関数とは?
UNARY_PERCENT関数は、値を100で割ってパーセント値に変換する関数です。
名前の「UNARY」は「単項」という意味です。引数をひとつだけ取る演算子関数のひとつですよ。
たとえば =UNARY_PERCENT(50) と入力すると「0.5」が返ります。50を100で割った結果です。
この関数は、Googleスプレッドシートの % 演算子を関数として表現したものです。セルに「50%」と入力すると、内部では「0.5」として保存されますよね。UNARY_PERCENT関数はその変換を明示的に行います。
UNARY_PERCENT関数にできることをまとめると、次のとおりです。
- 数値を100で割ってパーセント値(小数)に変換する
%演算子と同じ計算を関数として実行する- 他の関数と組み合わせて数式の中で使える
NOTE
UNARY_PERCENT関数はGoogleスプレッドシート独自の関数です。Excelには存在しないため、ファイルをExcelで開くとエラーになります。
UNARY_PERCENT関数の書き方(構文と引数)
基本構文
=UNARY_PERCENT(値)
カッコの中に「パーセント値に変換したい数値」をひとつ入れるだけです。
引数の説明
| 引数 | 必須/任意 | 説明 |
|---|---|---|
| 値 | 必須 | 100で割りたい数値、セル参照、または数式 |
引数はたったひとつです。渡した値を100で割った結果を返します。
戻り値
入力した値を100で割った数値が返ります。
| 入力 | 戻り値 | 計算内容 |
|---|---|---|
| 50 | 0.5 | 50 / 100 |
| 100 | 1 | 100 / 100 |
| 0 | 0 | 0 / 100 |
| -25 | -0.25 | -25 / 100 |
| 3.5 | 0.035 | 3.5 / 100 |
UNARY_PERCENT関数の基本的な使い方
数値を直接入力する
もっともシンプルな使い方です。
=UNARY_PERCENT(50)
結果は「0.5」です。50を100で割った値が返りました。
=UNARY_PERCENT(100)
結果は「1」です。100%は小数で1ですね。
=UNARY_PERCENT(0)
結果は「0」です。0を100で割っても0のままです。
セル参照を使う
A1に「75」が入っているとします。
=UNARY_PERCENT(A1)
結果は「0.75」です。セル参照を使えば、値が変わっても自動で再計算されますよ。
数式の結果に使う
他の計算と組み合わせることもできます。
=UNARY_PERCENT(B2+C2)
B2が「30」、C2が「20」なら合計50に対して「0.5」が返ります。
実務でのUNARY_PERCENT関数活用例
アンケートの回答率を小数に変換する
アンケート結果で「回答率85%」のように数値だけ入力されている場合です。B2に「85」が入っているとします。
=UNARY_PERCENT(B2)
結果は「0.85」です。このセルに表示形式「パーセント」を適用すると「85%」と表示されます。
元データが「85」のような整数のパーセント値で入力されているとき、集計用に小数へ変換する場面で便利ですよ。
割引率の計算に使う
定価から割引率を適用するパターンです。A2に定価、B2に割引率(数値)が入っているとします。
=A2*(1-UNARY_PERCENT(B2))
定価10,000円、割引率20なら 10000*(1-0.2) で8,000円です。
割引率が「20」のように百分率の数値で入っている場合に、UNARY_PERCENT関数で0.2に変換してから計算できます。
達成率のデータ整形
複数のシステムからエクスポートしたデータの達成率が「75」「120」のように整数で入っていることがあります。
=UNARY_PERCENT(C2)
「75」を「0.75」に変換すれば、スプレッドシートの標準的なパーセント表示で扱えます。グラフ作成や条件付き書式との相性もよくなりますよ。
%演算子とUNARY_PERCENT関数の関係
UNARY_PERCENT関数は % 演算子の関数版です。どちらも値を100で割る動作をします。
| 記法 | 例 | 結果 | 用途 |
|---|---|---|---|
| %演算子 | 50% | 0.5 | セルへの直接入力 |
| UNARY_PERCENT | =UNARY_PERCENT(50) | 0.5 | 数式内での変換 |
| 手動で割る | =50/100 | 0.5 | 単純な除算 |
3つとも結果は同じです。では、どう使い分けるのでしょうか。
%演算子が向いている場面
セルに固定値を入力する場合です。「50%」と入力すれば、自動的に0.5として保存されます。手軽で直感的ですよね。
UNARY_PERCENT関数が向いている場面
数式の中でパーセント変換が必要な場合です。セル参照や計算結果を100で割りたいとき、関数として明示的に記述できます。
また、UNARY_PERCENT関数はGoogleスプレッドシートの演算子関数シリーズのひとつです。ADD(足し算)、MINUS(引き算)、MULTIPLY(掛け算)、DIVIDE(割り算)と同じ分類ですよ。
TIP
実務では
/100で割る書き方で十分なケースがほとんどです。UNARY_PERCENT関数は、演算子関数を体系的に理解したいときや、数式の意図を明確にしたいときに役立ちます。
よくあるエラーと対処法
UNARY_PERCENT関数はシンプルですが、エラーが出ることもあります。
| エラー | 原因 | 対処法 |
|---|---|---|
| #VALUE! | 値に文字列が入っている | セル参照先が数値かどうか確認する |
| #NAME? | 関数名のスペルミス | 「UNARY_PERCENT」の入力を見直す |
| #ERROR! | 構文ミス(カッコ忘れ等) | 数式の入力内容を見直す |
#VALUE! エラーの対処
UNARY_PERCENT関数にテキストを渡すと#VALUE!エラーになります。
=UNARY_PERCENT("abc")
セル参照先が数値かどうか不安なときは、ISNUMBER関数(数値かどうかを判定する関数)で事前にチェックできますよ。
=IF(ISNUMBER(A1), UNARY_PERCENT(A1), "数値を入力してください")
#NAME? エラーの対処
関数名を「UNARY_PERCENT」以外で入力するとエラーです。「UNARYPERCENT」や「UNARY PERCENT」では認識されません。
アンダースコア(_)を忘れずに入力してくださいね。
空白セルを渡したとき
空白セルを渡すと「0」が返ります。空白は数値の「0」として扱われるためです。
データの入力漏れがあると0が返ってしまうので、注意してください。
まとめ
UNARY_PERCENT関数は、値を100で割ってパーセント値に変換するシンプルな関数です。
ポイントを整理します。
- 構文は
=UNARY_PERCENT(値)の1引数だけ - 値を100で割った結果(小数)を返す
%演算子の関数版。どちらも結果は同じ- Googleスプレッドシート独自の関数で、Excelには存在しない
- 文字列を渡すと#VALUE!エラーになる
数式の中でパーセント変換が必要なときに、ぜひ使ってみてください。
関連する関数として、掛け算を関数で行うPRODUCT関数や、小数を整数に変換するINT関数、四捨五入を行うROUND関数もあわせてチェックしてみてくださいね。
