- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
回答No.2の記載漏れです 回答No.2にする場合は回答No.1で説明した 入力シートの E2とF2には何も入力しなくて元のままでいけます。 ただ、セルを編集状態にして間違ってEnterだけ押してしまったりした場合は正常ではなくなりますのでシートの保護などで該当するセルを編集できないようにした方がいいかもしれません。
その他の回答 (2)
- kkkkkm
- ベストアンサー率66% (1727/2597)
回答No.1の追加です。 他の方法として 年会費シートのA2に =IFERROR(INDEX(入力シート!A:A,SMALL(IF(入力シート!$B$1:$B$100="年会費",ROW($A$1:$A$100)),ROW(A1))),"") と入力して Ctrl+Shift+Enter キーを同時に押してください。 見た目が以下のようになります(自動で{}が入りますので手動で{}を入れないでください) {=IFERROR(INDEX(入力シート!A:A,SMALL(IF(入力シート!$B$1:$B$100="年会費",ROW($A$1:$A$100)),ROW(A1))),"")} 必要なだけ右と下にコピーしてください。 月会費も"年会費"を"月会費"に変更して同じように設定してください。 $B$1:$B$100の$B$100は実際の利用すると思われる範囲より多く指定してください $A$1:$A$100も上記に合わせてください。
- kkkkkm
- ベストアンサー率66% (1727/2597)
多分2019だと思いますので 入力シートの E2に =IF(B2<>"年会費","",COUNTIF($B$2:B2,"年会費")) F2に =IF(B2<>"月会費","",COUNTIF($B$2:B2,"月会費")) として必要なだけ下にコピーしてください。 E列と F列は非表示にしても大丈夫です。 また、上記以外で添付画像のように E1に年会費 F1に月会費 と入力していれば E2に =IF($B2<>E$1,"",COUNTIF($B$2:$B2,E$1)) として右と下にコピーすればいけます。 年会費集計シートの A2に =IF(MAX(入力シート!$E:$E)<ROW(A1),"",INDEX(入力シート!A:A,MATCH(ROW(A1),入力シート!$E:$E))) として右と下に必要なだけコピーしてください。 月会費集計シートの A2に =IF(MAX(入力シート!$F:$F)<ROW(A1),"",INDEX(入力シート!A:A,MATCH(ROW(A1),入力シート!$F:$F))) として右と下に必要なだけコピーしてください。 各集計シートの$E:$Eと$F:$Fは入力シートに数式を入れた列を指定してください。 もしFILTER関数が使えたら 年会費集計シートの A2に =FILTER(入力シート!A:D,入力シート!B:B="年会費") だけで 月会費も"年会費"を"月会費"に変更してやってみてください。