アンケートの集計表で、未回答が「欠席」「なし」といった文字で入力されていて困ったことはありませんか。
ExcelのVAR.S関数を使うと、こうした文字列が自動的に無視されてしまいます。そのため「未回答=0点扱い」にしてデータのばらつき(分散)を見たいときに、うまく計算できないんですよね。
そこで活躍するのがVARA関数です。文字列やTRUE/FALSEをゼロや1に変換しながら、標本分散(サンプルから母集団のばらつきを推定する値)を計算できます。
この記事ではExcelのVARA関数について、基本構文からVAR.Sとの結果比較、VAR系5関数の使い分けまで解説します。STDEVAとの関係(分散 vs 標準偏差)も紹介しますので、アンケート集計やフラグ付きデータの分析に役立ててくださいね。
VARA関数とは?文字列を含むデータの標本分散を求める関数
VARA関数は、文字列やTRUE/FALSEを含むデータから、Excelで標本分散を求められる統計関数です。VAR.S関数が文字列を無視するのに対し、VARA関数はすべての値を数値に変換して計算に含めます。
「分散」は標準偏差の二乗にあたる値で、データのばらつきを測る指標です。STDEVAが標準偏差を返すのに対し、VARAは分散を返します。この関係は後述の「VARAとSTDEVAの関係」で詳しく説明しますね。
VARA関数の読み方と語源
VARAは「ブイエーアールエー」と読みます。「VARiance」(分散)に、文字列や論理値を含める意味の「A(Alphanumeric)」を足した名前です。
同じ「A」が付く関数には、AVERAGEA・MAXA・MINA・STDEVA・STDEVPA・VARPAなどがあります。これらはまとめて「A系関数」と呼ばれていて、すべて共通の変換ルール(文字列→0、TRUE→1、FALSE→0)で動作しますよ。
VARAが使える場面と使えない場面
VARAが向いているのは、文字列やTRUE/FALSEが混ざったデータのケースです。これらを0や1として計算に含めたいときに活躍します。アンケートの未回答を0点扱いにしたいときや、出欠のフラグ列でばらつきを見たいときに使えますよ。
逆に、文字列や未回答を「無視してデータから除外」したい場合は、VAR.S関数が適切です。「未回答者は集計から外す」方針のときはVAR.Sを選んでくださいね。
VARA関数の書き方(構文と引数)
ここからは、ExcelのVARA関数の構文を具体的に見ていきましょう。引数は最大255個まで指定できます。
基本構文
=VARA(値1, [値2], ...)
英語版での構文は以下のとおりです。
=VARA(value1, [value2], ...)
引数の説明
| 引数 | 必須 | 説明 |
|---|---|---|
| 値1 | 必須 | 標本分散を求めたい最初のデータ。セル範囲または単一の値を指定します |
| 値2以降 | 任意 | 2つ目以降のデータ。カンマ区切りで最大254個まで追加可能です |
引数に渡せるデータは、数値・セル参照・範囲・配列定数など幅広く対応しています。合計で最大255個の引数を受け取れます。
値の変換ルールは以下のとおりです。このルールがVARAの最大の特徴ですよ。
| 値の種類 | VARAでの扱い |
|---|---|
| 数値 | そのまま使用 |
| TRUE | 1に変換 |
| FALSE | 0に変換 |
| 文字列(セル参照経由) | 0に変換 |
| 空白セル | 無視(計算に含めない) |
| 数値型テキスト | 0に変換(文字列として扱う) |
対応バージョン
VARA関数はExcel 97以降の古い関数で、現行のバージョンすべてで使えます。
- Excel for Microsoft 365
- Excel 2024
- Excel 2021
- Excel 2019
- Excel 2016
- Excel for the web
Excel 2010でVAR.Sが導入された後も、VARAは新命名ルール(ドット付き)に置き換わることなく残っています。「VAR.A」のようなドット付きの新名称は存在しません。
VARA関数の基本的な使い方
ここでは、VARA関数の動きを3パターンのサンプルデータで確認していきます。VAR.Sとの結果比較も載せますので、違いをイメージしやすいはずですよ。
数値のみのデータで使う場合
まずは文字列を含まない、シンプルな数値データで試してみましょう。
A1: 80
A2: 70
A3: 90
A4: 60
A5: 100
このデータでVARAとVAR.Sをそれぞれ計算します。
=VARA(A1:A5) → 250
=VAR.S(A1:A5) → 250
数値のみのデータでは、両者の結果は完全に一致します。なぜなら、VARAもVAR.Sも「サンプルの偏差二乗和をn-1で割る」という同じn-1法を使っているからです。
補足すると、計算過程はこうなります。平均 = (80+70+90+60+100)÷5 = 80、偏差二乗和 = 0+100+100+400+400 = 1000、分散 = 1000÷4 = 250 です。
文字列が混ざるデータで使う場合(VAR.Sとの結果比較)
次に、アンケートの未回答を「欠席」という文字列で記録したデータを見てみましょう。
A1: 80
A2: 70
A3: 欠席
A4: 60
A5: 100
同じデータでVARAとVAR.Sを計算すると、結果が大きく異なります。
=VARA(A1:A5) → 1420
=VAR.S(A1:A5) → 291.67
VARAでは「欠席」が0に変換され、{80, 70, 0, 60, 100}の5個のデータとして計算されます。平均が62まで下がるため、偏差が大きくなり、分散が大きくなるんですね。
一方VAR.Sでは「欠席」が無視され、{80, 70, 60, 100}の4個のみで計算されます。平均は77.5で、ばらつきは小さくなります。
この違いは業務方針によって使い分けが必要です。未回答を「0点扱いで含める」ならVARA、「集計から除外する」ならVAR.Sを選びましょう。
TRUE/FALSEが含まれるデータで使う場合
最後に、出欠や合否などTRUE/FALSEのフラグで記録されたデータを見てみます。
A1: TRUE
A2: FALSE
A3: TRUE
A4: TRUE
A5: FALSE
このデータでVARAを使うと、次の結果になります。
=VARA(A1:A5) → 0.3
VARAはTRUE→1、FALSE→0に変換するため、内部的には{1, 0, 1, 1, 0}として扱われます。平均は0.6、標本分散は0.3になりますよ。
なお、VAR.SにTRUE/FALSEのみのデータを渡すと、すべて無視されて有効データが0件になります。結果として#DIV/0!エラーが返るので、論理値を扱うなら必ずVARAを選んでくださいね。
VAR系5関数の比較表と使い分け
Excelには分散を求める関数が5つあります。どれを選べばいいか迷いやすいので、ここで一度整理しておきましょう。
VAR.S / VAR.P / VAR / VARA / VARPAの違い
5つの関数を、対象データ・分母・値の扱い・登場バージョンで比較します。
| 関数 | 対象データ | 分母 | 文字列・論理値 | 登場バージョン |
|---|---|---|---|---|
| VAR.S | 標本(サンプル) | n-1 | 無視 | Excel 2010以降 |
| VAR | 標本(サンプル) | n-1 | 無視 | 旧互換(現在も使用可) |
| VAR.P | 母集団全体 | n | 無視 | Excel 2010以降 |
| VARA | 標本(サンプル) | n-1 | 0または1として含める | Excel 97以降 |
| VARPA | 母集団全体 | n | 0または1として含める | Excel 97以降 |
「標本」とは、調査対象となる全体から一部を取り出したデータのことです。「母集団」とは、調査対象となる全体のデータを指します。
分母がn-1のVAR.SやVARAは、標本から母集団のばらつきを推定するための計算(不偏分散)です。分母がnのVAR.PやVARPAは、母集団全体のデータが揃っている場合に使います。
A系関数(VARA・VARPA)を選ぶべき場面
VARAとVARPAは、A系関数の一員です。A系関数は次のような場面で使います。
- アンケートの未回答(「なし」「未記入」などの文字列)を0点扱いにしてばらつきを見たい
- 出欠や合否のTRUE/FALSEフラグで変動を測りたい
- 商品の在庫で「欠品」と記録されたセルを0扱いで集計したい
逆に、文字列や未回答を除外して純粋な数値のみで計算したいなら、VAR.SやVAR.Pが適切です。データの扱い方針で使い分けてくださいね。
VARA関数とSTDEVA関数の関係(分散と標準偏差)
VARAとSTDEVAは、同じA系関数の仲間です。返す値が「分散」か「標準偏差」かという点だけが異なります。
VARAは分散、STDEVAは標準偏差
- VARA: 標本分散を返す。偏差二乗和 ÷ (n-1) の値
- STDEVA: 標本標準偏差を返す。VARAの平方根(√VARA)
標準偏差はデータと同じ単位で解釈できるため、実務では標準偏差を使うことが多いです。一方、分散は計算の中間値として統計処理に使われます。
数値で確認:VARA = STDEVA²
同じデータを使って確認してみましょう。
A1:A5 = {80, 70, 90, 60, 100}
=VARA(A1:A5) → 250
=STDEVA(A1:A5) → 15.81
=15.81^2 → 249.96(≒250)
VARA(A1:A5) = STDEVA(A1:A5)^2 が成り立ちます(端数の関係で厳密には =STDEVA(A1:A5)^2 で確認すると一致します)。
分散と標準偏差はどちらを使っても情報量は同じですが、「点数のばらつき」を直感的に理解したいときは標準偏差(STDEVA)の方が便利ですよ。
VARA関数の実務シナリオ
ここからは、VARAが活躍する具体的な業務シナリオを2つ紹介します。どちらも「未回答や論理値を0・1で扱う」ケースです。
アンケートデータに未回答テキストが混ざるケース
社内満足度アンケートで、10人に「総合満足度(100点満点)」を聞いた結果を想定します。
A2: 80 (回答者1)
A3: 70 (回答者2)
A4: 欠席 (回答者3 未回答)
A5: 60 (回答者4)
A6: 100 (回答者5)
A7: 未記入 (回答者6 未回答)
A8: 90 (回答者7)
A9: 75 (回答者8)
A10: 85 (回答者9)
A11: 95 (回答者10)
2人の未回答を「0点扱い」でばらつきを評価するなら、以下のように書きます。
=VARA(A2:A11)
この方式は「未回答者も組織の満足度に影響しているはず」と考える場合に使います。一方、未回答者を除外して「回答者のみの満足度のばらつき」を見たければVAR.Sが適切です。
どちらが正しいという話ではなく、集計方針に合わせて選べるのがポイントですよ。
TRUE/FALSEフラグ付きデータのばらつき分析
出勤状況を日別に記録した表を想定します。社員1人分の1週間のデータです。
A2: TRUE (月曜日 出勤)
A3: TRUE (火曜日 出勤)
A4: FALSE (水曜日 欠勤)
A5: TRUE (木曜日 出勤)
A6: TRUE (金曜日 出勤)
出勤率のばらつきを分散で見たいときは、以下の数式を使います。
=VARA(A2:A6) → 0.3
VARAはTRUE→1、FALSE→0に変換してくれるので、フラグ列のばらつきを素直に計算できます。この分散の値は複数社員の比較やチーム間の比較にも応用できますよ。
VARAを使う際の注意点とよくある間違い
VARAを使うときによくハマる落とし穴を整理しておきます。エラーが出る前に目を通しておいてくださいね。
空白セルは無視される(0ではない)
変換ルールで見落としがちなのが、空白セルは「0」ではなく「無視」される点です。
A1: 80
A2: 70
A3: (空白)
A4: 60
A5: 100
このとき、VARAは空白のA3を無視して、{80, 70, 60, 100}の4個のデータとして計算します。「文字列は0扱い」でも「空白は除外」なんですね。
未回答を0点扱いにしたいなら、空白のままにせず「0」か「欠席」などの文字列を必ず入力しておきましょう。
数値型テキストは0として扱われる
Excelでは、セルの書式が「テキスト」になっていると、見た目が数値でも内部的には文字列として扱われます。これをVARAに渡すと0に変換されてしまいます。
A1: 80 (標準書式)
A2: 70 (テキスト書式で "70" と入力)
A3: 90
この場合、VARAはA2を0として計算するため、意図した結果になりません。セルの左上に緑の三角マークが表示されていたら、書式がテキスト型になっている可能性が高いですよ。
対処法は以下の2つです。
- セルを選択し、Ctrl + 1で書式設定を開き「標準」に変更する
- VALUE関数で数値に変換する(例:
=VALUE(A2))
データを外部CSVやWebからコピーしたとき、この状態になりやすいので注意してくださいね。
数値データが1個以下だと#DIV/0!エラー
変換後の数値が1個以下のとき、分母のn-1が0になるため、VARAは#DIV/0!エラーを返します。
A1: 欠席
A2: 未記入
A3: 80
この例では、文字列2個は0に変換されて3個のデータ{0, 0, 80}として計算されるので、エラーにはなりません。ただし、実データが1件しかない場合(例: =VARA(A3))はn-1=0になって#DIV/0!が返ります。
少ないデータで分散を測ろうとしていないか、範囲指定を見直してみてください。
引数に文字列を直接指定すると#VALUE!エラー
VARA関数に文字列を引数として直接指定した場合は#VALUE!エラーが出ます。
=VARA(80, 70, "欠席", 60, 100) → #VALUE!エラー
これは「引数直接指定」と「セル参照経由」で挙動が異なるためです。セル参照経由の文字列は0に変換されますが、数式内に文字列リテラルを直接書くと型不一致でエラーになります。
セル範囲を使えば回避できるので、以下のように書き直しましょう。
=VARA(A1:A5) → セル範囲指定ならOK
まとめ
ExcelのVARA関数は、文字列やTRUE/FALSEを含むデータから、標本分散を求められる関数です。この記事のポイントを振り返っておきましょう。
- 構文:
=VARA(値1, [値2], ...)、最大255個の引数 - 変換ルール: 文字列→0、TRUE→1、FALSE→0、空白→無視
- VAR.Sとの違い: VAR.Sは文字列を無視、VARAは0扱いで含める
- A系関数: AVERAGEA・MAXA・MINA・STDEVA・STDEVPA・VARPAと共通の変換ルール
- STDEVAとの関係: VARA(分散)= STDEVA(標準偏差)の二乗
- 使う場面: アンケートの未回答を0点扱いにしたいとき、TRUE/FALSEフラグのばらつきを見たいとき
- よくある間違い: 数値型テキストが0扱いされる、直接指定の文字列は#VALUE!、データ1個以下は#DIV/0!
業務方針に合わせて、VARAとVAR.Sを使い分けてみてくださいね。「未回答=0点扱い」がしっくりくる場面ではVARAが強い味方になってくれますよ。
VARA系の他の関数やA系関数もあわせて学んでおくと、統計集計の幅が広がります。以下の関連記事も参考にしてくださいね。
- ExcelのSTDEVA関数: VARAの平方根にあたる標本標準偏差
- ExcelのVAR.S関数: 数値のみの標本分散を求める正規関数
- ExcelのVAR.P関数: 数値のみの母集団分散を求める関数
- ExcelのVAR関数: 旧版の標本分散関数
- スプレッドシートのVARA関数: Googleスプレッドシート版VARA
