Excelのsumifs関数で#VALUE!が表示されるとき

参照元・参照先

Excelのsumifs関数で他のブックを参照している場合、いったん参照先のブック・参照元のブックを閉じて再度開いたときや、参照元のブックを閉じたまま参照先のブックで数式の編集を行おうとしたときに「#VALUE!」が表示されてしまいます。

源泉所得税の納付書(給与所得・退職所得等の所得税徴収高計算書)に記載する金額を計算するために、別のブック(給与管理用のExcelのファイル)をsumifs関数で参照していたのですが、ブックを開くと「#VALUE!」が表示されているセルがあり、参照元のブックを開かないと解消されないため困っていました。

今「参照元」「参照先」と書いていて、どちらが「参照元」でどちらが「参照先」かがわからなくなったので調べてみると以下のようになっていました。

日本語的には何だか反対のような感じがしますが、今後はこれに準じた表現を使用することにします。

Excelでは、参照「されている」方が「参照元」となる。 → 数式とセルの関係を表示する

英語では、

「参照されるセル」は Precedent cells

「参照するセル」は Dependent cells

と書くそうです。

#VALUE!を表示させない方法(セル参照を使用)

sumifs関数での「#VALUE!」の表示をさせない方法ですが、2つあります。

1つは姑息的な方法です。

参照先のブック(sumifs関数を書こうとしているワークシートの含まれているブック)に、作業中のワークシートとは別のワークシートを新規に作成します。

このワークシートのワークシート名を「sheet1」とします。この「sheet1」上のセルに計算式を入力して参照元のブックを参照します。

=’C:¥パス名¥[ブック名]ワークシート名’!セル番地

といったかたちで、参照元のブックの必要なセル範囲を参照します。

ここでsumifs関数を書こうとしているワークシートから、ワークシートsheet1のセルを参照するようにsumifs関数の計算式を書きます。

いわば間接的に参照することによって、sumifs関数で「#VALUE!」を表示させないようにすることができます。

しかしこの方法だと参照するためのワークシートを別途しなければならないのでそのワークシートの管理に手間がかかります。

#VALUE!を表示させない方法(配列数式を使用)

sumifs関数だと参照元のブックを閉じているときに「#VALUE!」が表示されてしまうことがありますが、sum関数やif関数ではそういったことが起こりませんので、sumとifを組み合わせて「配列数式」を使用することによって「#VALUE!」を表示させないようにする方法です。

配列数式については以下のサイトに説明があります。

他ブックを参照できる関数、他ブックを参照できない関数 (鵜原パソコンソフト研究所)

Excel2010-2016:配列数式とは (教えて!HELPDESK )

タイトルとURLをコピーしました