Excel (一般機能)

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

 
(Windows 10 Pro : Microsoft 365)
IndexとMatchでできますか?
投稿日時: 22/09/08 16:17:38
投稿者: alive@

A列にPJ名称、B列に"合計"文字、C列に合計値があります
行数は各PJごとに違います
C列にある合計値を抽出し、リスト化したいのですができません
 
   A列   B列   C列
1  Cpj
2
3
4       合計   110
5
6  Apj
7
8
9
10      合計   120
11
12  Bpj
13
14      合計    90
15
 
このように抽出したい
  Cpj  110
  Apj  120
  Bpj   90
 
よろしくお願いします。
 
 

回答
投稿日時: 22/09/08 16:49:34
投稿者: hatena
投稿者のウェブサイトに移動

365ということなら、FILTER関数でいけますね。
 
まず、
=FILTER(A1:A100,A1:A100<>"")
でPJ名称
 
その右隣のセルに、
=FILTER(C1:C100,B1:B100="合計")
で合計値

投稿日時: 22/09/08 17:13:54
投稿者: alive@

hatenaさま
 
できました、ありがとうございます。
 
ちなみになんですが、
PJ名称から検索して抽出するということはできますか??
 
 Apj 120 ← PJ名称から抽出
 Bpj 90
 Cpj 110
 Dpj 150
 Epj 70

回答
投稿日時: 22/09/08 18:13:59
投稿者: んなっと

   A   B  C D E  F  G
 1 Cpj          Apj 120
 2            Bpj   
 3            Cpj 110
 4    合計 110    Dpj  90
 5                
 6 Apj              
 7                
 8                
 9                
10    合計 120        
11                
12 Dpj              
13                
14    合計  90        
 
G1
=IFERROR(VLOOKUP("合計",INDEX(B:B,MATCH(F1,A:A,0)):C$500,2,),"")
下方向・↓
 
とか
=IFERROR(INDEX(FILTER(C$1:C$500,B$1:B$500="合計"),MATCH(F1,FILTER(A$1:A$500,A$1:A$500<>""),0)),"")

回答
投稿日時: 22/09/08 21:58:50
投稿者: Mike

alive@ さんの引用:
このように抽出したい
  Cpj  110
  Apj  120
  Bpj   90

こんなの、駄目よダメダメですかぁ〜
  A  B  C D E  F
1 Cpj      Cpj 110
2         Apj 120
3         Bpj 90
4   合計 110
5
6 Apj
7
8
9
10   合計 120
11
12 Bpj
13
14   合計 90
 
F1: =IFERROR(INDEX(C:C,SMALL(IF(B:B="合計",ROW(B:B)),ROW(A1))),"")
【お断わり】上式は必ず配列(CSE)数式として入力のこと

投稿日時: 22/09/09 10:07:33
投稿者: alive@

んなっとさま、Mikeさま
ちゃんとできました、ありがとうございます!