Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Pro : Excel 2016)
sumifs関数で文字列や記号を対象にできますか?
投稿日時: 21/09/14 18:47:29
投稿者: 春麗

sumifs関数で,複数条件を満たした値をもってくることはできるのですが,
対象列が文字列や記号だった場合,0 になります.
 
(sheet1)
A B C
ID test 記号
111 test1 *
111 test2 /
222 test1 -
222 test2 /
 
以下の様に作成したく,
sheet2の B2セルには,
=SUMIFS(Sheet1!$C:$C,Sheet1!$A:$A,Sheet2!$A2,Sheet1!$B:$B,Sheet2!B$1)
とすると sheet2 のセルには全て 0 が入ります.
 
(sheet2)
A B C
ID test1* test2
111 * /
222 - /
 
 
 
 
 

回答
投稿日時: 21/09/14 19:10:15
投稿者: んなっと

●前と同じ、取得と変換を使う方法。
https://www.moug.net/faq/viewtopic.php?t=80881&sid=002a0e7ea2c3fd38d7dce26dd96b47c2
 
 
 データ
→テーブルまたは範囲から
→先頭行を〜にチェックが入った状態で OK
→test 列を選択
→変換 列のピボット
→値列:記号
→詳細設定オプション:集計しない
→ホーム 閉じて読み込む
 
 変更があったら、データ→すべて更新
 
●関数の方法。
 
Sheet2 B2
=LOOKUP(1,0/(Sheet1!$A$1:$A$500=$A2)/(Sheet1!$B$1:$B$500=B$1),Sheet1!$C:$C)
右方向下方向コピー
 
※SUMIFSは「数値を合計」しますから、0になって当然です。
さらに、何かの間違いでSheet1に同じデータの組が2回登場したら、
SUMIFSはそれらの和を返してしまいます。簡単で強力な関数ですが、少し注意が必要です。
今回のLOOKUPは、万が一同じ組が2回登場したらあとの方の結果だけを返します。
 
前回の質問もそうでしたが、今回も同じデータの組は1回しか登場しないはずですよね。

回答
投稿日時: 21/09/14 20:16:14
投稿者: んなっと

最新のOffice365ならXLOOKUPが使えますが、おそらく無駄になるので省略。

投稿日時: 21/09/17 17:22:22
投稿者: 春麗

んなっと さんの引用:

※SUMIFSは「数値を合計」しますから、0になって当然です。
さらに、何かの間違いでSheet1に同じデータの組が2回登場したら、
SUMIFSはそれらの和を返してしまいます。簡単で強力な関数ですが、少し注意が必要です。
今回のLOOKUPは、万が一同じ組が2回登場したらあとの方の結果だけを返します。
 
前回の質問もそうでしたが、今回も同じデータの組は1回しか登場しないはずですよね。

 
んなっと さん
 
上記の件,今回は私が意図することなく同じデータの組は1回しか登場しないリストで助かりました.
この様な注意があったのですね.軽率でした.
どうもありがとうございました.
XLOOKUP も調べてみます.