宜しくお願いします。
A B C D理想形
1 A001 0 A 15
2 C001 10 C 60
3 B004 20 B 20
4 A002 0 A 0
5 C002 50 C 0
6 A003 10 A 0
7 D002 0 D 20
8 A004 5 A 0
9 D005 20 D 0
上記のようなリストがあり、A列にIDのようなもの、それぞれB列に数字を持っています。グループID別には既にC列に所得してあります。
B列の数字をCのグループごとに合算し、各グループの一番数字の少ない人(AでいうとA001、BではB004)のD列に表示したいです。
sumifでいけるかと思ったのですが・・・解りにくい説明でしたら補足させていただきますので御教授いただけますでしょうか。
宜しくお願いします。
No.6ベストアンサー
- 回答日時:
こんばんは。
以下の式は、配列式ですが、配列確定を必要としません。そのまま貼り付ければ、出来るはずです。計算スピードなども、通常の関数と同等レベルにはなっているはずです。
>一番数字の少ない人とはアルファベットのあとの数字が一番少ない人です。
は、SMALL関数で、一番少ない数の人の所に出すようになっています。
=IF(SMALL(INDEX(MID($A$1:$A$9,2,3)*(LEFT($A$1:$A$9,1)=C1),,),COUNTIF($A$1:$A$9,"<>"&C1&"*")+1)=MID(A1,2,3)*1,SUMPRODUCT((LEFT($A$1:$A$9,1)=C1)*$B$1:$B$9),0)
範囲を変える場合は、編集-置換で変更してください。
例:
$A$9 →$A$100
$B$9 →$B$100
なお、A1 からデータが始っているものとしていますから、例えば、2 行目からなら、
A1 →A2
C1 →C2
になります。
No.5
- 回答日時:
こんにちは~
すでに正解が出ていますが、一応コレでもできる、かも…?
D1に
=IF(--SUBSTITUTE(A1,C1,"")=MIN(IF($C$1:$C$9=C1,--SUBSTITUTE($A$1:$A$9,C1,""),"")),SUMIF($C$1:$C$9,C1,$B$1:$B$9),0)
と入れて、Ctrl+Shiftを押しながらEnterで確定(配列数式)。
確定後、必要なだけ下にフィルコピー。
No.4
- 回答日時:
こんにちは。
maruru01です。D1に、
=IF(C1&TEXT(MIN(IF($C$1:$C$9=C1,--RIGHT($A$1:$A$9,3),RIGHT($A$1:$A$9,3)+1000)),"000")=A1,SUMIF($C$1:$C$9,C1,$B$1:$B$9),0)
と入力して、[Ctrl]と[Shift]を押しながら[Enter]を押して確定します。
(数式の両端に「{}」が付きます。)
これを下の行へコピー。
データが多いと処理が重くなるかも知れません。
No.3
- 回答日時:
D1に
=IF(B1=MIN(IF($C$1:$C$9=C1,$B$1:$B$9,999999999)),SUMIF($C$1:$C$9,C1,$B$1:$B$9),0)
と入力し
SHIFT+CTRL+ENTERキーで確定し
フィルコピーします。
Aの場合、「各グループの一番数字の少ない人」がA001とA002の二人いるので、両方に値が入ってしまうのが理想形と異なります
この回答への補足
言葉足らずですみません。
一番数字の少ない人とはアルファベットのあとの数字が一番少ない人です。
Aだったら001、Bだったら004です。
001から始まるとも限らないし、また、リストに例を出すのをわすれましたが、001が下のほうに居る場合もあります。
皆様、二度手間にさせてしまってすみません。
No.2
- 回答日時:
No1さんの回答と同じことですが
D1に
=IF(MATCH(C1,C:C,0)=ROW(),SUMIF(C:C,C1,B:B),0)
この回答は、グループで最初に出現した行に回答が入ります。
>各グループの一番数字の少ない人(AでいうとA001、BではB004)
「一番数字の少ない人」・・・ID番号、B列の値?
「一番数字の少ない人」を条件にすると式が複雑になります。
この回答への補足
言葉足らずですみません。
一番数字の少ない人とはアルファベットのあとの数字が一番少ない人です。
Aだったら001、Bだったら004です。
001から始まるとも限らないし、また、リストに例を出すのをわすれましたが、001が下のほうに居る場合もあります。
No.1
- 回答日時:
こんにちは
D1に
=IF(COUNTIF(C$1:C1,C1)>=2,0,SUMIF($C$1:$C$9,C1,$B$1:$B$9))
下方向にコピー
(例題の表のような場合フィルハンドルのダブルクリックでもいいです)
で如何でしょうか?
この回答への補足
言葉足らずですみません。
一番数字の少ない人とはアルファベットのあとの数字が一番少ない人です。
Aだったら001、Bだったら004です。
001から始まるとも限らないし、また、リストに例を出すのをわすれましたが、001が下のほうに居る場合もあります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) SUMIF関数について 4 2023/06/14 13:13
- Excel(エクセル) Excel 値を返す数式についてです 3 2022/11/21 20:08
- Excel(エクセル) エクセルで2つの表を比較して、文字列が同じだが、その行のある値が違うものを抽出したい 1 2022/10/06 21:48
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- その他(Microsoft Office) Excelの関数(FILTER関数)について教えてください 2 2023/07/31 16:11
- Excel(エクセル) エクセル関数をご教授ください。 2 2023/08/09 12:17
- Visual Basic(VBA) VBAで、1つのエクセルで、2つのシートからもう1つのシートに条件のある転記コードを教えてください。 1 2023/03/16 18:07
- Excel(エクセル) <スプレッドシート>IF関数の複数条件について 5 2022/10/27 14:38
- Excel(エクセル) エクセル関数の変わった使い方 3 2022/05/13 17:12
- Visual Basic(VBA) VBAで、特定の文字より後を削除して残った数値を文字列に変換と特定の文字より前も削除したい 3 2022/04/15 19:21
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
別シートからの文字を変更
-
エクセルの行の抽出について質...
-
Excel 2019 のピボットテーブル...
-
Excelのセルを飛ばして入力する
-
【マクロ】エクセルにかいてあ...
-
Excelのオートフィル
-
Excel初心者です。 詳しい方、...
-
スプレッドシート クエリ関数 1...
-
MOS365 Excel Expert / Excel R...
-
西暦や和暦の表示をyyyymmdd表...
-
Excel初心者です。 詳しい方、...
-
excelの不要な行の削除ができな...
-
エクセルの数式で教えてください。
-
スプレッドシートの関数VLOOKUP...
-
エクセルでセルに「氏名を入力...
-
エクセルで指定した日付、店舗...
-
【Excel】セル内の時間帯が特定...
-
Excelのグラフ軸について
-
Excel 2019 は、SPILL機能があ...
-
関数を教えて下さい。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイル内にある数字の出現回...
-
Excel関数の先頭に「@」が入っ...
-
エクセルの気味悪い不思議
-
Excel VBAで、実行時にsheet上...
-
表示されている人数だけを数え...
-
他人が作ったマクロの理解
-
Excelの関数について質問です。
-
Excel 集計表
-
エクセル 日時の計算式について
-
Excelの関数に関して質問です。...
-
エクセル:セル内の文字列の下...
-
絞り込み検索
-
エクセルの関数で
-
エクセルの書式設定について教...
-
余分なEXCELファイルに印刷され...
-
VBA 同一シート内での転記の仕方
-
長期休みの関数はありますか
-
Excelの空のセル
-
エクセルで入力してある文を別...
-
Excelのマクロで、セルを結合し...
おすすめ情報