質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%

Q&A

5回答

4209閲覧

エクセルで決まった数値のみ抽出する方法

KY6

総合スコア12

0グッド

2クリップ

投稿2015/12/25 10:13

エクセルシートAの、ある列に1から順に番号が振ってあるとします。
エクセルシートBの、ある列にいくつかの数値が順に振ってあるとします。
シートBの数値のみ、シートAから取り出すにはどのような方法があるでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kpiyohiko

2015/12/25 10:46

もう少し状況を記載して頂けないでしょうか。 例えば、Aには2列あり、数値と名前を保持している Bにはそれに対応した数値とコードネームが記載してある などなど また、Excelのバージョンはいくつですか? Windowsですか?Macですか? OSはいくつですか?
kpiyohiko

2015/12/25 10:47

こちらの質問が他のユーザから「質問の範囲が広すぎる」という評価を受けています わからない点を明確にし、調査したこと・試したことと共に記入していただくと、回答が得られやすくなります。
guest

回答5

0

VBA等でやる必要がなければ
エクセルシートAの、ある列の数値が一意であることと、検索範囲の一番左の列にあることが
前提になりますが、VLOOKUPで近いことができるのではないでしょうか。

【シートA】
列A|列B
1 | A
2 | B
3 | C
4 | D
5 | E
6 | F

【シートB】
列A
2
5

【シートC】
一行目の
列Aに =VLOOKUP(シートB!$A1,シートA!$A$1:$B$6,1)
列Bに =VLOOKUP(シートB!$A1,シートA!$A$1:$B$6,2) とやって
下方向へシートBの行数分式をコピーすると下記結果がとれますよね。

列A|列B
2 | B
5 | E

投稿2016/01/07 05:59

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

10000件くらいならメモリに持てば無理やり実施できます。
よって、下記の記事を参考
シートA,シートBのセルを配列に読み込んで地道に計算し
結果を戻せばいいと思います。

http://officetanaka.net/excel/vba/speed/s11.htm

投稿2015/12/26 05:29

pochi0701

総合スコア210

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

シートAの値が必ず1から順になっているのなら、その最後の数値以下は全て該当する…という考え方でもよいのかな?

そうならシートBの値に対するループだけで済みそうです

投稿2015/12/26 04:31

takito

総合スコア3111

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

方法としては、
①For文でシートBの数値をシートAと比較する
②FIND関数でシートBの数値をシートAから検索する
③シートAとBをの値をVariant型の配列にいれてからFor文で比較する
等があります。
この中では③の方法が最も高速で処理できると思います。

投稿2015/12/26 00:55

tomo.ina

総合スコア357

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

エクセルシートAの、ある列とエクセルシートBの、ある列両方に有る数字を抽出したいて事でしょうか。
一番簡単なのはForを2重ループにして総当たりす方法です。
お互い1000件で18秒ほどと遅いですが、データが少なければ可能です。

データが多ければ両方の列をソート後比較すれば高速にできます。
自分のプログですが下記でA列に有って、B列に無い物のを探す高速化記事を書いてますので参考にしてみてください。
http://blog.livedoor.jp/zask5178/archives/316168.html

投稿2015/12/25 10:55

kakeru

総合スコア63

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問