
次の Excel 関数がエラーを返すのはなぜですか? このエラーは、返される参照が 1 セルより大きい場合にのみ発生します。数式では、返される参照は 1 行の高さと 2 行の高さです。
=OFFSET($A$2,ROW(G6),0,1,2)
答え1
数式が返す結果には2つの種類があります#価値!どのように使用しようとしているかに応じて、ここでエラーが発生します。
まず、値の配列を返す数式がある場合、違いが生じますどこ数式を入力します(「配列が入力されていない場合」)。
その数式をA10(配列を入力しない)に入れるとA8の値が表示され、数式をB10に入れるとB8の値が表示され、数式を列AとB以外の場所に入れると、#価値!これは、Excel のこの種の関数の標準的な動作です。
次に、2つのセルの水平範囲に数式を「配列入力」して両方の値を表示しようとすると(chuffが示唆しているように)、次のようになります。#価値!エラーはのせいで行関数。
それはなぜ起こるのか行()関数によっては「配列」を返します(ここでのように1行だけの場合でも)。これは適切に処理されません。ハイライトするとわかります。行(G6)F9キーを押すと、6ではなく{6}が表示されます。解決策は、数式で6だけを使用するか、行のように別の関数でラップすることができます。和例えば
=OFFSET($A$2,SUM(ROW(G6)),0,1,2)
他のいくつかの関数も同様の機能を果たす。和ここでは、例えばマックス、分.....または置き換えることもできます行と行例えば
=OFFSET($A$2,ROWS(G$1:G6),0,1,2)