2016-05-24 8 views
0

私は合計したい範囲を手動で選択しても機能するSUMIF()文を作成しましたが、その範囲内に収めることができます私は合計したいと自動的に範囲の上の特定のブレークポイントに範囲を拡張する必要があります。 例えば、カラム 'duration'を合計し、 '$'カラムに '2'がある場合は合計を2倍にし、残りのカラムを ' $ ':GoogleスプレッドシートSUMIF()ダイナミックレンジ関数

C D 
$ duration 
1 1:40 
2 2:30 
1 3:30 
1 1:50 

$ duration 
2 5:50 
1 2:30 
2 4:20 

私はすでにそれを行う方法を考え出しました。しかし、私は私が書いたSUMIF()ステートメントと合計したい複数の範囲を持っています。この場合のブレークポイントは$です。

Googleスプレッドシートでこれを行う可能性はありますか?

+0

を:

=MATCH("$",OFFSET($C$1,,,row()-1)) 

そして、最終的な式は次のようになります。あなたはそれをカウントする列Eを使用することができますか?それは列DかEか?私の意見では、名前やグループ番号(1,2,3 ..)の追加カラムを作成してから、「sumproduct」を使用するのが最善の方法です。 –

+0

こんにちはマックス、あなたの答えをありがとう、合計はC列の下にあるはずです。私はすでにSUMIF関数を持っていますが、動作しますが、私は列Cの下に関数を置くとき、範囲を自動選択したい私はそれを実行するたびに関数を編集する。 – LineLineLine

答えて

0

は、この式を試してみてください。

=SUMPRODUCT(
OFFSET($C$1,MATCH("$",OFFSET($C$1,,,row()-1)),,row()-1-MATCH("$",OFFSET($C$1,,,row()-1))), 
OFFSET($D$1,MATCH("$",OFFSET($C$1,,,row()-1)),,row()-1-MATCH("$",OFFSET($C$1,,,row()-1)))) 

これは複雑です。しかし、この部分MATCH("$",OFFSET($C$1,,,row()-1))は数式で4回使用されます。合計が置かれなければならないされた場合、あなたの例では

=SUMPRODUCT(OFFSET($C$1,E6,,row()-1-E6),OFFSET($D$1,E6,,row()-1-E6)) 
+0

申し訳ありません、今すぐ試すことができます。どうもありがとうございます!!!これは動作します!私は今とても幸せです! – LineLineLine

関連する問題