- 締切済み
エクセルの関数を教えてください!
840 1 1260 1 1260 1 1260 1 1890 2 1890 1 1890 1 2310 3 2646 1 2646 1 2940 4 この2列の数字は左側の数字に対して、右側が その数字の個数なのですが、 左の数字が統合され、それに対して右の数値が加算される エクセルの関数を教えてください。
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- Yamayama30250
- ベストアンサー率0% (0/0)
A1:B12の範囲に数値があるとして C1セルに =if(countif(A$1:A1,A1)=1,row(),"") D1セルに =if(iserror(small(C:C,row()-row(D$1)+1)),"",index(C:C,small(C:C,row()-row(D$1)+1))) E1セルに =if(D1<>"",sumif(A:A,A1,B:B),"") それぞれ12行まで式をコピー でどうでしょうか。
- KURUMITO
- ベストアンサー率42% (1835/4283)
A1セルは空のままでA2セルから下方にお示しのデータが入力されているとします。 B2セルには次の式を入力して下方にドラッグコピーします。 =IF(A2="","",IF(ROW(A1)=1,1,IF(AND(COUNTIF(A$2:A2,A2)=1,OFFSET(A2,-2,0)=OFFSET(A2,-1,0)),MAX(B$1:B1)+1,1)))
- minosennin
- ベストアンサー率71% (1366/1910)
一例です。 元データがAB列の1行以降にあるとして、C1に =IF(A1<>A2,SUMIF(A:A,A1,B:B),"") と入力して、C1を下へ必要数ドラッグ ただし、A列は昇順または降順が前提です。(離れた列に同じ数字がない。) なお、関数式はこの画面からEXCELへコピペできます。
- yosifuji20
- ベストアンサー率43% (2675/6115)
左に列がA2から下へ、 右の個数がB2から下へという位置として C2には =IF(A2=A3,0,A2) D2には =IF(A2=A3,0,SUM(B$1:B2)-SUM(D$1:D1)) この式をC2,D2の下のセルに必要数コピーをします。 これで、左の数値が変わる直前行のC列D列に、その数値とその個数が表示されます。 D列の式の意味は、左側の直後の数値が変わるときに、その行のB列の先頭からの合計値からD列の自分のセルのすぐ上までの数値の合計を引くという意味です。 どうしてこれでいけるかは良く考えてみてください。
- chie65536(@chie65535)
- ベストアンサー率44% (8742/19841)
元データがA1:B11に入っていると仮定して、C1に =SUMIF(A:A,A1,B:B) と入力して、C1をC2~C11にコピー
- chonami
- ベストアンサー率43% (448/1036)
ピボットテーブルでやったら一発ですけど。