[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『抽出』(初心者さん)
初めてお世話になります.
<シート1>
A B C D
1 * A社
2 * B社
3 * C社
4 * A社
5 * D社
6 * B社
7 * B社
8 * A社
9 * C社
10 * A社
11 * D社
という具合にシート1のB列にランダムに会社名が入ります.これをシート2のA1から下へシート1に出現した会社名をリスト化したいのです.シート2のA1には何を入れてコピーしたらいいのでしょうか.よろしくお願いいたします.
<シート2>
A
1 A社
2 B社
3 C社
4 D社
こんな方法は如何でしょう?
・フィルタオプション案 <シート1>に見出しを付ける A B 1 ○○ 社名 1 * A社 2 * B社 3 * C社 4 * A社 5 * D社 6 * B社 7 * B社 8 * A社 9 * C社 10 * A社 11 * D社
データ → フィルタ → フィルタオプションの設定 「指定した範囲」にチェック 「抽出範囲」を適当な所のセル 「重複するレコードは無視する」にチェックを入れてOK 出てきたものを シート2 にコピペ
・計算式案 シート1 C2 =COUNTIF($B$2:B2,B2) 必要範囲まで下にコピペ
シート2 A1 =IF(COUNTIF(Sheet1!$C$2:$C$12,1)<ROW(A1),"", INDEX(Sheet1!$B$2:$B$12,SMALL(IF(Sheet1!$C$2:$C$12=1,ROW($A$1:$A$11),""),ROW(A1)))) ↑配列数式 上記数式を入力(コピペ)後、Ctrl + Shift + Enter で確定 { 数式 }になればOK 必要範囲までコピペ
※範囲は、例題に合わせてあります。 実際のシートに合わせてください。
(キリキ)(〃⌒o⌒)b
◆関数による方法です!
◆Sheet1 A B C 1 ○ 社名 2 * A社 2 3 * B社 3 4 * C社 4 5 * A社 6 * D社 6 7 * B社 8 * B社 9 * A社 10 * C社 11 * A社 12 * D社
◆Sheet2 A 1 A社 2 B社 3 C社 4 D社
◎作業列ありの場合◎ ◆Sheet1の作業列の式 C2=IF(B2="","",IF(COUNTIF($B$2:B2,B2)=1,ROW(),"")) ★下にコピー
◆Sheet2の式 A1=IF(ROW(A1)>COUNT(Sheet1!C:C),"",INDEX(Sheet1!B:B,SMALL(Sheet1!C:C,ROW(A1)))) ★下にコピー
◎作業列なしの場合◎ ◆Sheet2の式 A1=Sheet1!B2 A2=IF(ROW(A1)>COUNT(INDEX(1/(MATCH(Sheet1!$B$2:$B$100,Sheet1!$B$2:$B$100,)=ROW($1:$100)),))-1,"", INDEX(Sheet1!$B$1:$B$100,100-MAX(INDEX((COUNTIF(A$1:A1,Sheet1!$B$2:$B$100)=0)*(Sheet1!$B$2:$B$100<>"")*100-ROW($A$2:$A$100),0)))) ★A2の式を下にコピー
◆いかがでしょうか! (Maron)
ところが,私の説明不足なのですが,以下のように行が上から詰まっていません.そのような場合は,どこを変えれば良いのでしょうか?おそらくrow関数だと思うのですが,この関数,未だに使い方がよくわかりません.よろしくお願いいたします.
<シート1>
A B
1
2
3 NO. 社名
4 * A社 (←ここから)
5 * B社
6 * A社
7 * D社
8 * D社
9 * A社
10 * B社
<シート2>
A
1
2
3
4 A社 (←A4から)
5 B社
6 C社
◎作業列あり◎ ◆Sheet1のC4の式 C4=IF(B4="","",IF(COUNTIF($B$4:B4,B4)=1,ROW(),"")) ★下にコピー
◆Sheet2の社名の式 A4=IF(ROW(A1)>COUNT(Sheet1!$C$4:$C$100),"",INDEX(Sheet1!B:B,SMALL(Sheet1!$C$4:$C$100,ROW(A1)))) ★下にコピー
◎作業列なし◎ ◆Sheet2の社名の式 A4=Sheet1!B4 A5=IF(ROW(A1)>COUNT(INDEX(1/(MATCH(Sheet1!$B$4:$B$100,Sheet1!$B$4:$B$100,)=ROW($1:$100)),))-1,"", INDEX(Sheet1!$B$1:$B$100,100-MAX(INDEX((COUNTIF(A$4:A4,Sheet1!$B$4:$B$100)=0)*(Sheet1!$B$4:$B$100<>"")*100-ROW($A$4:$A$100),0)))) ★A5の式を下にコピー
◆いかがでしょうか! (Maron)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.