• ベストアンサー

データから指定の番号のみを抽出する方法

BVA初心者です。もし、お分かりの方がいましたら教えていただけたら幸いです。 いま、データから任意の番号のデータを抽出したいと思っています。 具体的には     A     B      C      D     E   code番号  商品名   値段    割引   産地 1  234    甲     100円    20%    東京 2  345    乙     130円    15%    神奈川 3  356    丙     220円    5%    千葉 4  669    丁     55円     0%    栃木 5  432    戊     110円    0%     茨城 6  884    己     130円    15%    群馬 という表があったとしたら、 ぬきだしたいcode番号が、345、669、884だとすれば     A     B      C      D     E   code番号  商品名   値段    割引   産地 1  345    乙     130円    15%    神奈川 2  669    丁     55円     0%    栃木 3  884    己     130円    15%    群馬 という表を作成したいのですが。 元のデータも数が多く、また、抜き出したいデータも10程度で毎日手作業でするには面倒なので関数やマクロなどでできればと考えています。 ちなみにcode番号の複重はありません。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! 参考になるかどうか分かりませんが・・・ 一例として、 下の画像のB10セルを =IF(A10="","",VLOOKUP(A10,A$2:E$7,2,0)) と数式にしています。 それをそのままオートフィルでコピーしていってみてはどうでしょうか? A列に該当する数字が入力された場合に、一致する行が表示されると思います。 他にも色々方法はあるかと思いますが、 この程度しか思い浮かびませんでした。 以上、参考になれば幸いです。m(__)m

teketekeru
質問者

お礼

ありがとうございます。 IF関数も併用させてもらいました。 オートフィルだと少しズレてしまうので、 =IF($A2="","",VLOOKUP($A2,a!$A$2:$AR$226,2,FALSE)) (sheet名a、A2からAR226までの表) これの列位置(FALSEの前の2のところ)を全部手直ししました。 参考になりました。ありがとうございます。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

色々のやり方が有る。 >code番号の複重はありません、が好都合で (1)VLOOKUP関数でやる    これをVBAでVLOOKUP関数を使ってやる (2)フィルタ、フィルタオプション    これをVBAでやる (3)Find関数でやる (4)全行をIF文で探して見つける。 >データも10程度で、と多い場合は、それをテーブル化(配列化)してVBAコードを工夫する。 (5)imogasi方式(Googleで照会のこと)説明略。 ーー (2)辺りが、マクロの記録をとり、毎日変化する部分を適当にVBAコードを手直ししてできるのでお勧めかなと思う。

teketekeru
質問者

お礼

いろいろなやり方があるんですね。 参考になりました。 VBAはまだまだ理解できていないので、VLOOKUP関数でやることにしました。 ありがとうございました。

noname#99913
noname#99913
回答No.2

上の表がSheet1にあるとして、下の表の項目名とコード番号を入力後、次のように式を入力し、下へコピーしてください。 B2:=VLOOKUP($A2,Sheet1!A:E,2,FALSE) C2:=VLOOKUP($A2,Sheet1!A:E,3,FALSE) D2:=VLOOKUP($A2,Sheet1!A:E,4,FALSE) E2:=VLOOKUP($A2,Sheet1!A:E,5,FALSE)

teketekeru
質問者

お礼

回答ありがとうございます。 この方法でもできました。 コード番号を入れ替えば毎日簡単にできますね。 ありがとうございました。

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

1行目を項目行とします。 Excel(エクセル)基本講座:フィルタ オプションの設定(データ抽出) http://www.eurus.dti.ne.jp/~yoneyama/Excel/filter3.htm 【一つの条件で抽出する】を参照。 1)空いているセルに、項目:code番号、その下に抜き出したいcode番号を1セルに1個入れていく。(縦に) 2)A1をクリックしてから【データ】→【フィルタ】→【フィルタオプションの設定】 ・その場で抽出したければ【選択範囲内】、別の場所にしたければ【指定した範囲】 ・リスト範囲は自動ではいる(ハズ? 入らなければ指定する) ・検索条件範囲は1)の範囲を入れる。 ・【指定した範囲】を選んだら、出力したい範囲の左上のセルを指定する。 とやれば出来ると思います。

teketekeru
質問者

お礼

ありがとうございます。できました。 (^_^ ) 投稿する前に、このフィルタオプションも試してみたんですけど、やり方が間違えてました。 助かりました。