Excel-2010 - 上のセルからコピーしたにもかかわらずFormulaがreturn #Valueを返す


3

私は昨年このスプレッドシートを受け取り、毎年使用するのが素晴らしいと思いましたが、間違いがあります。休暇日、個人の休日、会社の日、病気の日などを追跡するスプレッドシートです。列A 9行目以降の月が月です。 AFを通過する列Bから始まる行8は日数です(式には関係ありませんが、追跡している日数を追跡するのに役立ちます)。

式は次のようになります(may2は#の値を与えている行の名前付き範囲です)。そしてFYI - Capital Vは一日中休暇を過ごしたことを意味します。

=sum(if(exact(may2,"V"),1,if(exact(may2,"v"),0.5,0)))

4月の行とまったく同じ型で入力し、5月という名前の範囲を挿入した場合も同じ応答です。 =sum(if(exact(may2,"V"),1,if(exact(may2,"v"),0.5)))

4月の行をクリックすると、次のようになります。 {=sum(if(exact(apr1,"V"),1,if(exact(may2,"v"),0.5)))}

5月の行にコピーして貼り付けると、4月という名前の範囲が使用されるので、明らかに4月の結果が得られます。私が見ている "{"と "}"に興味があります。 =の前や式の最後にこれらが使われたことは一度もありません。

5月の行に定義されていて、それぞれの売りに文字通り選択されてdeleteを押すセルがあると私は多分あると思いました。それでも同じ結果

さらに、別のセルで別の行の作業式をテストした場合 - 4月に別のセルで同じ式を実行したところ、同じ#valueエラーが返されました。

隠しセルに何か問題があると考えていたので、新しいタブを作成してすべてを入力しましたが、それでも同じエラーが発生しました。

それが何であるかについての任意の洞察力は素晴らしいでしょう。


これらは配列式です
soandos

回答:


2

ここでSUMPRODUCTを使用すると、「配列入力」を回避できます。この正規表現を試してください[改訂]

=SUMPRODUCT(EXACT(may2,"v")/2+EXACT(may2,"V"))


完璧に動作しました!ありがとうございました!!
Kim

1

配列式の詳細については、を参照してください。 ここに 。何が起こっているのはあなたの範囲が間違って命名されているということです。それがどのようにできるかを見るためには、 ここに


範囲は他の行でも機能するので正しく名前が付けられているようで、私はあなたのリンクを見直しました。以下に提供された公式は範囲が命名された方法を変えないで完全に働きました。ご回答ありがとうございます。
Kim

0

{} 式が確かに行列演算であることを示します。数式をコピーした後に、Enterキーの代わりにCtrl + Shift + Enterキーを押して "確認"します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.