dポイントプレゼントキャンペーン実施中!

Excelの質問です(Excel2013使用)。お力をお貸し下さい!!

「表中になんらかの文字列が入力されていたら、そのセルの1行目に入力されている数値を参照し合計を求める」という表を作成したいと思っています。

例えば、添付画像のような表です。

合計欄をD列として、D2に下記のような数式を入れると、正しく計算されます。
=SUM(IF(A2<>"",A1,0),IF(B2<>"",B1,0),IF(C2<>"",C1,0))

ただし、実際の表は50列近くあり、IF関数がその分増えてしまい煩雑になってしまいます。
もっと他に良い数式があるのではと思い調べているのですがなかなかうまくいかず困っています。

Excelが得意な方、教えて頂けると助かります!
ご回答いただけると嬉しいです。
宜しくお願いします!

「Excel 何らかの文字が入力されていた」の質問画像

A 回答 (2件)

こんにちは!



一例です。
画像の配置だとD2セルに
=SUMPRODUCT((A2:C2<>"")*A$1:C$1)

という数式を入れフィルハンドルで下へコピーしてみてください。

※ 列は増えても列範囲を広げるだけです。m(_ _)m
    • good
    • 0
この回答へのお礼

教えて頂いた2つのパターン、両方試し、どちらも理想通りの表が出来ました!
処理の重さが変わってくるということなんですね。勉強になります!
大変、大変助かりました。これで業務の効率化につながります。感謝でいっぱいです!

お礼日時:2018/09/06 00:46

No.1です。



たびたびごめんなさい。

>実際の表は50列近くあり・・・
というコトなので
=SUMIF(A2:C2,"<>",A$1:C$1)
の方が少し軽いかもしれません。

※ SUMPRODUCT関数は配列数式になります。m(_ _)m
    • good
    • 0

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