質問: エクセルで出来ますか? エクセルで以下の集計は出来ますか? _ (a)__ (b)___ (c) (1)aさん ビール 2本 (2)aさん サワー 1本 (3)bさん ビール 3本 (4)bさん ワイン 1本 (5)bさん ウイスキー 1本 (6)cさん ワイン 5本 (7)cさん 焼酎 1本 上記を集計して ____(a)_______ (b) (1)3本 aさん (2)5本 bさん (3)6本 cさん と表示する事は可能でしょうか。 知恵がないので教えてください。
回答: >知恵がないので教えてください。 知恵は考えることを繰り返さないと身に付きません。 サンプルデータのaさん、bさん、cさんの文字が統一されていませんので、そのままでは集計誤差が出ます。 sheet2のa1セルに次の数式を入力してください。 sheet2のb列には重複しない名前を入力されているものとします。 =if(b1="","",sumproduct((jis(sheet1!a:a)=jis(b1))*sheet1!c:c)) または =if(b1="","",sumproduct((asc(sheet1!a:a)=asc(b1))*sheet1!c:c)) jis関数は半角の英数、カタカナを全角英数、カタカナに変換します。 asc関数は逆で全角文字を半角文字に変換します。 sumif関数では比較対象の文字列をjis関数やasc関数で前処理するとエラーになりますので使えません。 文字種が統一されていればsumif関数で集計できます。 =if(b1="","",sumif(sheet1!a:a,b1,sheet1!c:c)) また、単位の"本"は数値の表示形式で文字を付加するようにしないと計算対象の数値として扱えません。 敢えて、文字列のままで集計上するときは数値化するための処理が必要です。 貼付画像のsheet1のc列は数値の表示形式で"本"を付加してあります。 集計結果はsheet2のa列ですが、これも数値の表示形式で"本"を付加してあります。