アプリ版:「スタンプのみでお礼する」機能のリリースについて

Excelのフィルターを使用せず、関数もしくはマクロにて下記のような条件で抽出したいと思っております。

Sheet1の1行目からSheet2の条件に当てはまる列の値を空白を除いて全て抽出し、
アルファベット+(ひらがなorカタカナor数字)をSheet2にコピー

[Sheet1]
アルファベット ひらがな カタカナ 数字
A        あ    ア    1
B        い    イ    空白
C        空白   ウ    2
D        う    空白   3
・        ・    ・    ・
・        ・    ・    ・
・        ・    ・    ・

[Sheet2]
条件:ひらがな
アルファベット ひらがな
A        あ
B        い 
D        う 
・        ・ 
・        ・ 
・        ・ 

※[Sheet2]の条件は「ひらがな」「カタカナ」「数字」に変更可能
※[Sheet2]のアルファベットは隣列の値が入っている行のみ表示


説明下手で申し訳ないのですが、どなたかわかる方ご教示いただけないでしょうか。
何卒よろしくお願いいたします。

A 回答 (2件)

No.1です。



前回の回答で
>尚、Sheet1のB~D列に重複データはない!という前提です。

と記載しましたが、重複データがある場合の数式も考えてみました。
Sheet2のB4セルの数式はそのままで大丈夫です。

A4セルの数式を
=IFERROR(INDEX(Sheet1!A$2:A$1000,SMALL(IF(OFFSET(Sheet1!A$2:A$1000,,MATCH(B$1,Sheet1!A$1:D$1,0)-1,,1)<>"",ROW(A$2:A$1000)-1),ROW(A1))),"")

これは配列数式になりますので、B4セル同様Ctrl+Shift+Enterで確定してください。m(_ _)m
    • good
    • 1
この回答へのお礼

記載いただいた通りに作成したところ、思い通りの結果になりました!
大変助かりました。ありがとうございました!

お礼日時:2019/05/29 09:41

こんばんは!



数式でやってみました。

一例です。
Sheet1は↓の画像のような配置になっているとします。
そして、Sheet2のB1セルに ひらがな・カタカナ・数字 のいずれかを入力すると表示されるようにしてみました。
尚、Sheet1のB~D列に重複データはない!という前提です。

まず、Sheet2のB3セルに
=B1
としておきます。

Sheet2のA4セルに
=IF(B4="","",INDEX(Sheet1!A$1:A$1000,SUMPRODUCT((Sheet1!B$1:D$1000=B4)*ROW(A$1:A$1000))))

B4セルに
=IFERROR(INDEX(OFFSET(Sheet1!A$2:A$1000,,MATCH(B$1,Sheet1!A$1:D$1,0)-1,,1),SMALL(IF(OFFSET(Sheet1!A$2:A$1000,,MATCH(B$1,Sheet1!A$1:D$1,0)-1,,1)<>"",ROW(A$2:A$1000)-1),ROW(A1))),"")

B4セルは配列数式なので、Ctrl+Shift+Enterで確定!(←必須★)しておいてください。

A4・B4セルを範囲指定 → B4セルのフィルハンドルで下へコピーすると
画像のような感じになります。

※ Sheet2のB1セルをSheet1の項目名(B~D列)に色々入れ替えてみてください。m(_ _)m
「Excelによる条件抽出」の回答画像1
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!