-PR-

締切り済みの質問

質問No.2667960
困ってます
困ってます
お気に入り投稿に追加する (0人が追加しました)
回答数4
閲覧数2683
エクセルの表から抽出する
エクセルで作成したデータを関数を使い抽出する方法はないでしょうか?
ちなみに一行のみならばVLOOKUPでいいのですが・・・
 例
 No. 日付 金額
 125 1/1 1,500  8H
 125 1/11 1,500  7.5H
 125 1/13 2.200  6H  等のデーターNo.125と入れると 全ての              データが表示される

 MACHやINDEXを使えば可能でしょうか?
 宜しくお願いいたします
投稿日時 - 2007-01-15 15:26:13

回答 (4)

回答No.4
該当分を抜き出し先で縦に続けて並べればよいなら、
作業列をつ買うのを許されるなら、自称imogasi方式で抜け出せます。
OKWAVEかWEBでimogasi方式で照会してもらえば、沢山質問例が出ます。
作業列を使うので#2、#3のご回答より迂遠ですが、やっているロジックは、#2・#3のお答えより理解しやすいかなと思います。INDEXとMATCH関数を使います。
ーーー
関数は本質上、該当抜き出しは不得手と思います。
ーーー
VBAで、「NO」の各行を、IF文で総なめすれば、該当分は抜き出せます。
Findメソッドもあります。
関数のような、難しい式になりません。
ーー
データーフィルターフィルタオプションの設定も考えてください。
別シートに抜き出せないかも知れないが。
投稿日時 - 2007-01-15 23:18:46
この回答を支持する
(現在0人が支持しています)
回答No.3
配列数式を使用しない方法です。
任意のシートのA1に「125」を入力して、B1に以下の式を入れます。
B2以降の下のセルと、右側(C~E列)にもコピーしてください。

=IF(COUNTIF(Sheet1!$A:$A,$A$1)-ROW()+1>0,INDEX(Sheet1!B$1:B$350,SUMPRODUCT(LARGE((Sheet1!$A$2:$A$350=$A$1)*ROW(Sheet1!$A$2:$A$350),COUNTIF(Sheet1!$A:$A,$A$1)-ROW()+1))),"")

元データの範囲は2行目~350行目としています。必要に応じて変更してください。
投稿日時 - 2007-01-15 17:45:22
この回答を支持する
(現在0人が支持しています)
回答No.2
シート3にデータリスト(仮に100行)、シート1を表示リスト、表示リストのA1セルにNOを入力するとします。
表示シートの任意セルに次の数式を設定し、縦横に必要分コピーして下さい。
この数式は、配列数式の為、shift+ctrl+enterキーを同時押下して下さい。
=IF(ROW(A1)-1<COUNTIF(Sheet3!$A$1:$A$100,$A$1),INDEX(Sheet3!A$1:A$100,SMALL(IF(Sheet3!$A$1:$A$100=$A$1,ROW(Sheet3!$A$1:$A$100),999),ROW($A1))),"")
投稿日時 - 2007-01-15 16:20:29
この回答を支持する
(現在0人が支持しています)
回答No.1
No.の列でオートフィルタをかければいいのではないでしょうか。
投稿日時 - 2007-01-15 15:38:42
この回答を支持する
(現在0人が支持しています)
補足
回答有難うございます

例えばオートフィルタで表示されているデータを別のシートに表示させて印刷したいのです

要するにこのデータをレポートとして別の様式で印刷したいので質問しました
現在は、単純にデータのコピー&貼り付けでやっていますが
当然手間なので・・・・
宜しくお願い致します
投稿日時 - 2007-01-15 15:43:33
この質問は役に立ちましたか?
0人が「このQ&Aが役に立った」と投票しています
もっと聞いてみる

関連するQ&A

この他の関連するQ&Aをキーワードで探す

別のキーワードで再検索する

同じカテゴリの人気Q&Aランキング

-PR-

-PR-

特集

背筋がゾクゾクする心霊体験を要チェック!

お城、ボート、ツリーハウス、ユニークな物件満載!

患者さんやご家族、それぞれに合ったゴールと道筋を。

同じカテゴリの人気Q&Aランキング

-PR-

ピックアップ

-PR-