2

シートの行数が不明という条件でSUMPROCUT関数を使いたいです。

したがって、数式は=SUMPRODUCT(--F:F,--G:G)によって記述され、Enter キーを押した後に#VALUE! 現れた。

列名が文字列型であることに気付きましたが、計算に含まれていたため、問題になる可能性があります。
SUMPRODUCT関数で文字列テキストを避ける方法は? または、もっと賢い方法があるかもしれません。助けてください。ありがとうございます!

[更新 - スクリーンショットと元の要件]
クライアントから、10*470 + 5*350 + 5*5.5 + 25*180 + 4*48 + 6*15 + など、合計 (F 列 * G 列) を計算する式を求められました。 80 * 4.5 + 70 * 5.44、およびシート内の行数がわからないため、すべてのExcelファイルを処理するための一般的な式が必要になりました

ここに画像の説明を入力

4

2 に答える 2

1

ここに試してみてください:

=SUMPRODUCT($F2:INDEX($F:$F,MATCH(9.9999E+307,$F:$F)), $G2:INDEX($G:$G,MATCH(9.9999E+307,$G:$G)))

値が同じ行で終わる場合。

いくつかの説明:

  • index()参照と値を返すことができます (ここでは参照として使用しています)
  • 9.9999E+307 はトリックです - 基本的に、数値の範囲内のどの数値よりも大きい数値を探す場合 (& 9.9999E+307 は、Excel が処理できる最大の数値であるため、ほとんどの場合に機能します) match()、リストの最後の番号の位置を返します。これは私たちが望むものです

インスピレーションはここで見つかりましたが、このトリックは非常に巧妙で賢いことがわかりました:)

于 2012-07-24T10:44:17.627 に答える
0

使用するだけ=SUMPRODUCT(F:F,G:G) です(つまり、なしで--

于 2012-07-24T10:49:35.720 に答える