プロが教えるわが家の防犯対策術!

Excelの表計算について。
A列とB列にデータがあります。
B列にあるデータの合計を出したいのですが、、

A列中にいくつか空白行があり、空白を境目に、それより上のB列にあるデータを合計、そこから次のA列空白までB列の合計を出したいときの計算方法が思いつきません。300行ほどあり、空白はいくつかあります。
(※補足:空白行は、固定ではなく、データを取り込む度に変わります。)
関数でできますか?それともマクロとか使わないと駄目なのでしょうか…?

詳しい方ご教授願いたいです。よろしくお願いします。

A 回答 (5件)

1行目はタイトル行にしています。


C列を作業列にしてます。あまりきれいではありませんが。
C2=IF(AND(A2="",A1=""),"SPACE",IF(A2="","TOTAL",SUMPRODUCT((A$2:A2="")*1)))
"SPACE"は””でも構いません。明示しているだけです。
D列のA列が空白の行に、その上の合計を出します。
D2==IF(C2="TOTAL",SUMIF(C$1:C1,C1,B$1:B1),"")
「Excelの表計算について。 A列とB列」の回答画像5
    • good
    • 0
この回答へのお礼

ご丁寧にありがとうございました!!教えていただきました通り、入力したら、できました!本当にありがとうございました。

お礼日時:2021/10/19 17:03

こんにちは



>関数でできますか?それともマクロとか使わないと駄目なのでしょうか…?
どちらでも可能と思います。

以下は関数での例です。
 ・A1セルは空白ではない
 ・A列の空白セルが2つ以上連続することはない
と仮定しています。
(仮定と違っても計算可能ですが、その分だけ空白が出力されます)

例えば、C1セルに(=結果を表示したい1番上のセル)
=IF(AGGREGATE(15,6,ROW(A$1:A$400)/(A$1:A$400=""),ROW(A2)-1)-IF(ROW(A1)=1,0,AGGREGATE(15,6,ROW(A$1:A$400)/(A$1:A$400=""),ROW(A1)-1))=1,"",SUM(OFFSET($B$1,IF(ROW(A1)=1,0,AGGREGATE(15,6,ROW(A$1:A$400)/(A$1:A$400=""),ROW(A1)-1)),0,AGGREGATE(15,6,ROW(A$1:A$400)/(A$1:A$400=""),ROW(A2)-1)-IF(ROW(A1)=1,0,AGGREGATE(15,6,ROW(A$1:A$400)/(A$1:A$400=""),ROW(A1)-1))-1)))
の式を入力し、下方に適当なところ(=合計値の組数)までフィルコピーすれば、順に合計値が得られると思います。
    • good
    • 1
この回答へのお礼

今回は、関数にて処置できました。ありがとうございました。

お礼日時:2021/10/19 17:05

その区切りごとのグループは何か同じグループと判定できるものがあるのでしょうか?


例えばA列の値が変わるごとに空白行が入るとか。
    • good
    • 0
この回答へのお礼

区切りごとに同じグループと判定出来るものがないデータでしたが、無事に解決出来ました。ありがとうございました。

お礼日時:2021/10/19 17:06

合計行の位置を固定化できないなら、関数では毎回手作業しかない。

マクロがスマートだが初心者には敷居が高い。まあ本人のやる気次第だが。
    • good
    • 0
この回答へのお礼

がんばります

無事に計算出来ました。ありがとうございます。

お礼日時:2021/10/19 17:02
    • good
    • 0
この回答へのお礼

がんばります

過去の質問確認せず、申し訳ございませんでした。ありがとうございます。

お礼日時:2021/10/19 17:01

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!