- ベストアンサー
エクセルの算式について 種類を同じ項目ごとにまとめて、その項目ごとの数
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
その通りにデータをエクセル上に記入してから, D2に =IF(ROW(A1)>COUNT(1/FREQUENCY(A:A,A:A)),"",SMALL(IF(ROW($A$2:$A$15)=MATCH($A$2:$A$15,A:A,0),$A$2:$A$15),ROW(A1))) という式を(これをコピーして)入れて,必ずコントロールキーとシフトキーを押しながらEnterで,忘れず間違えずに入力して,下向けにコピーしておきます E2に =IF(D2="","",SUMIF(A:A,D2,B:B)) と普通に入れて,下向けにコピーしておきます。 ただし,こんなイミフメイの式をただ写して使ってもあとで困るだけです(実はホントのデータはこうではありませんでした,答えを聞けば出来ると思ったけど出来ませんでしたになる場合も多いです)から, 推奨手順: 空っぽのD1セルを選ぶ データタブの「統合」を開始する AB列を追加する 左端列にチェックしてOKする と,必ず答えが出てきます。
その他の回答 (2)
- MackyNo1
- ベストアンサー率53% (1521/2850)
種類が例示のデータのように数字で入力されているなら、D2セルに「=MIN(A:A)」と入力し、D3セルに「=IF(OR(MAX(A:A)=D2,D2=""),"",SMALL(A:A,RANK(D2,A:A,2)+COUNTIF(A:A,D2)))」と入力して下方向にオートフィルして下さい。 もちろんE列の集計はSUMIF関数でできますね。 ちなみに実際のA列のデータが数字でなく文字列なら、重複のない文字列データを表示するならD2セルに以下の式を入力して下方向にオートフィルしてください。 =INDEX(A:A,SMALL(INDEX((MATCH(A$2:A$100&"",A$2:A$100&"",)<>ROW(A$2:A$100)-1)*100+ROW(A$2:A$100),),ROW(A1)))&""
お礼
ありがとうございます。 皆さんのおかげで何とかなりました。 教えて頂いた算式もチャレンジさせて頂きます。意味合いを理解できるようにして、今後活用して行きたいと思います。しかしみなさん素晴らしいですね。
- aquiz
- ベストアンサー率46% (759/1635)
希望とは違うかもしれませんが、集計機能を使っての 表示ではだめなのでしょうか?
お礼
早速ありがとうございます。 集計機能はやってみたのですが、その後に結果だけ拾い上げるのにどうしていいものか悩んでいました。可視セルって言う物が有るのですね。勉強になりました。 ついついすぐに算式を考えてしまうのも問題ですね。それ以外の機能も勉強して行きます。ありがとうございました。
お礼
ありがとうございます。統合は少し前に勉強したばかりで、その時使って解決したらすっかり頭から抜けていました。教えて頂いた通り推奨手順で解決しました。助かりました。 しかし、凄い算式が有るんですね。理解したい気持ちは有るんですが・・・。確かに私のレベルでは、意味不明です。精進します。