• ベストアンサー

エクセルのデータのセル内容(電話番号)検索

エクセルのデータでセル内容(電話番号)を検索して表示しる方法を教えてください。 オートフィルターは、登録件数が1000件?位しかないので、それを越える件数の検索を したいのですが、方法が解りません  解る方、教えてください。

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

  • ベストアンサー
  • chonami
  • ベストアンサー率43% (448/1036)
回答No.9

正直、数式を人に教えてもらっても自分で実状に合わせて変更できないのならそれは使わないほうがいいと思います。 フィルタオプションでやってみたら如何ですか? それか、表示用シートと検索用シートを=でリンクさせて抽出したデータが出てくるようにするとか。 (すでに回答していただいてますよね。) でももし数式をご自分で変更してみたいのでしたら、 =IF(COUNTIF(Sheet1!$A$5:$A$3000,$A$1)<ROW(A1),"",INDEX(Sheet1!$A$5:$I$3000,SMALL(IF(Sheet1!$A$5:$A$3000=$A$1,ROW($1:$2996)),ROW(A1)),COLUMN(B1))) Sheet1にデータ、別シートのA2に上の数式を入れています。 どこにシート名を入れるかわかりますね? それから、Sheet1のA5:A3000に「リスト」と名前を付け、別シートのA1にリストという名前を参照するようにプルダウンリストを設定します。 条件の後出しというのはこういった掲示板の質問では非常に敬遠されます。 回答者に二度手間三度手間をかけますので。 抽出系の質問をされる場合は、データの配置や抽出したリストをどこに出したいか、作業列は使えるのかなどの情報を最初に提示されることをお勧めします。

ryuujirou3
質問者

お礼

有り難う御座いました。 どうやって良いか解らず質問も適切に出来ずに、 お手数をおかけしまして誠にすいませんでした。 今までの回答で大変助かりました、後は何とか やってみます。

その他の回答 (8)

  • sekkii
  • ベストアンサー率50% (13/26)
回答No.8

どうも!No.3・4です。 マクロってご存知ですか? マクロの記録を使えばボタン等にマクロを設定できますが、 毎回データ数が変わったりするのであれば、いろいろ工夫しないと いけないと思います。 コードがいじれないと難しいです。 単にフィルタオプションの設定を一発で出したいのなら ツール→ユーザー設定の「コマンド」タブで 左の一覧から「データ」をクリック 右の一覧の「フィルタオプションの設定」を マウスでツールバーまでドラッグすれば ツールバーに表示されます。

  • chonami
  • ベストアンサー率43% (448/1036)
回答No.7

うお、ごめんなさい。また変なところの式をコピーしてしまいました。 L2=IF(COUNTIF($A$5:$A$3000,$K$2)<ROW(A1),"",INDEX($A$5:$I$3000,SMALL(IF($A$5:$A$3000=$K$2,ROW($1:$2996)),ROW(A1)),COLUMN(B1))) Ctrl+Shift+Enter で。

ryuujirou3
質問者

お礼

ご回答有り難う御座います。 いまさらですが・・・・ 別のワークシート(検索用の)を作ってやる方法は、ありますか? よく解らないので、すいません m__m

  • chonami
  • ベストアンサー率43% (448/1036)
回答No.6

ははぁ、そうきましたか… やっぱり、並べ替えちゃえばいいのでは?と思いますが一応関数で出してみます。 データの上に抽出すると5件以上ある場合に面倒ですので、今回はK2に検索値、その右側にデータを出すようにします。 K2に入力規則でプルダウンリストを作成します。(前回のA2と同じ。) そして、L2に =IF(COUNTIF($A$5:$A$3000,$K$2)<ROW(C12),"",INDEX($A$5:$I$3000,SMALL(IF($A$5:$A$3000=$K$2,ROW($1:$2996)),ROW(C12)),COLUMN(D12))) と入力し、Ctrl+Shift+Enterで確定します。 その後必要な分右と下にフィルコピーして下さい。 また、重複する番号があるという事ですのでプルダウンリスト設定時に重複しないリストを作成したいようでしたらNo.4さんのやり方で別に抽出してからそれをリストに設定してもいいと思います。

  • chonami
  • ベストアンサー率43% (448/1036)
回答No.5

…すみません。範囲指定が間違ってました。 =VLOOKUP($A2,$A$5:$I$3000,COLUMN(),0) 第二引数がA5からI300を範囲指定です。 A列しか指定しなかったらそりゃ出ませんね。 失礼しました。

ryuujirou3
質問者

お礼

ご回答有り難う御座いました。 入力してみました、検索表示できました しかし、1行しか出来ないのですが・・・ 一つの電話番号をすべて表示したいのですが、どうすれば様でしょうか 説明不足だったかもしれません、すいません

  • sekkii
  • ベストアンサー率50% (13/26)
回答No.4

早とちり失礼しました! それでしたら データ→フィルタ→フィルタオプションの設定 で抽出可能です。 検索条件範囲は、別のシートを用意して 一覧を作っておけば良いです。 (検索したい電話番号はどのようになっているのでしょうか?上記シートに「="="&セル番号」などと表示しておけば反映されます。) フィルタオプションの設定についてはネットにたくさん載ってます。 http://allabout.co.jp/gm/gc/297791/2/ などご参照ください。 わかりづらかったらすみません!

ryuujirou3
質問者

お礼

ご回答有り難う御座いました。 表示出来るようになりました。 助かりました、有り難う御座います。 出来れば、この作業をコマンドボタンとかに登録出来ないでしょうか? 検索結果はデータの右横に作って見ました 「データ」 → 「フィルタ」 → 「フィルタオプションの設定」を 簡単な操作で出来ないでしょうか 何か有りましたら、お教えください

  • sekkii
  • ベストアンサー率50% (13/26)
回答No.3

こんにちは。 私の勉強不足でしょうか? >オートフィルターは、登録件数が1000件?位しかないので というのがわかりませんが… Excel2003:▼ボタン押下→(オプション)で       [希望の電話番号] [と等しい]→[OK] Excel2007:▼ボタン押下→数値フィルタ→指定の値に等しい       [希望の電話番号] [と等しい]→[OK] で出ませんか? ご存じでしたら失礼しました; あ、それとも検索したい電話番号が1000件以上あるということでしょうか?

ryuujirou3
質問者

補足

ご回答有り難う御座いました。 そうです電話番号が1000件以上有ります Excel2003を使っています オートフィルターでは、途中までしか表示出来ません 困っているのですが、良い方法が解りません 良い方法が有りましたら、お教えください。

  • chonami
  • ベストアンサー率43% (448/1036)
回答No.2

レイアウトは分かりました。 元表の電話番号をA列に持ってくることは可能ですか? それができるようであれば、A2から右に表示されるように配置します。 まず、A2に入力規則を設定します。ちなみに当方は2003です。 データ→入力規則→入力値の種類:リスト、元の値:=$A$5:$A$3000 とすると、A2で電話番号が選択できるようになります。 一応検証しているので全て表示されるはずです。 その後、B2に=VLOOKUP($A2,$A$5:$A$3000,COLUMN(),0) と入力し、右にコピーしてみて下さい。

ryuujirou3
質問者

補足

ご回答有り難う御座いました。 早速やってみたのですが・・・・Excel2003番を使っています A列に挿入でセルを増やしてI列をコピーして持ってきまして A2に入力規則を設定しました、 B2に関数の=VLOOKUP($A2,$A$5:$A$3000,COLUMN(),0)を入力しましたが 「#REF!」と表示してしまいます、どうしてでしょう・・・? 何を、間違っているのかも、解りません 何が悪いか解りましたら お教えください。

  • chonami
  • ベストアンサー率43% (448/1036)
回答No.1

探すだけなら普通にCtrl+Fで検索したらいいんじゃないですか? オートフィルターが使えない…という事は該当セルを探し出せればいいんですよね? もしくは、並べ替えてしまうとか。 探した後、何をどう表示させたいのか、表のレイアウトはどうなっているのかなどが分からないから回答が付かないんだと思いますよ。

ryuujirou3
質問者

補足

回答有り難う御座いました。 検索をした後でセルの内容(電話番号)が含まれている行をすべて 表示させたいのですが、オートフィルターでは、登録される数が決まっている 様なので、それを越えた数は登録出来ないようなのです オートフィルターと同じ表示をしたいのですが、登録数が越えた時に、どうすれば 良いかわかりません、良い方法が有りましたら お教えください。 A:5~I:3000のセルを使っています   A  B   C   D   E   F    G    H    I   5 年  日付     名前 支店  内容  住所  時間  電話番号 6 2011 3月22日   山田 中区  ・・・   ・・・  ・・・   090-0000-9999 こんな、レイアウトなのですが 何とかなりませんでしょうか お願いします。

関連するQ&A

  • エクセル2007電話番号だけを抜き出したい

    ※内容を一部変えて再度質問させていただきます。 調べても分からなかったので、どなたかご教授お願いします。 エクセル2007を使用し、ある表から電話番号だけを抜き出したいのですが、 電話番号の書かれているセルに、余分なことが複数入れられているため、 オートフィルタでの抽出や、Alt+Hでの置き換えがうまくいきません。 同セルの中にこれだけの情報が入っています。 「車の年式・車名・担当者・電話番号」 ※データは・のように記号等で区切らず、スペースを空けたり、繋がったりしています。 また電話番号はハイフンがあったりなかったりと統一性がありません; 「車の年式・車名・担当者・電話番号」でゴチャゴチャになっているセルを 「電話番号」のみにしたいのです。 申し訳ありませんが、マクロ等VBAは分かりませんので、 それ以外の方法がありましたら教えていただけないでしょうか? どうぞよろしくお願いいたします。

  • エクセル オートフィルタの検索件数について

    エクセルのオートフィルタを設定した際、 検索できる件数・範囲って 1,000件位って「ヘルプ」で確認したら出てましたが、 データ数が1,000件を越えてしまい 今までのように、簡単に検索出来なくなって 大変困っています。 何か良い方法はありますか? ご存知の方がいらっしゃいましたら 教えて下さい! ヨロシクお願いします。

  • エクセル 同じデータなのに違うという判定

    2つのエクセルファイル(電話番号リスト)を比較し、一致するものだけを抽出するという操作をしています。 フィルタオプションを使い、一致するものを抽出しているのですが、まったく同じ電話番号なのに、フィルタオプションで抽出されないものがあり、困っています。 たとえば、0120-234567という電話番号がファイル1にあったとして、まったく同じ番号がファイル2にもあるのですが、この2つが違うデータとして扱われてしまうのです。 試しに2つのファイルから、セルをそのままコピーし、別のエクセルファイルに並べ、if(A1=A2,"一致","一致しない")という関数をしてみると、なんと「一致しない」でした。 見た目的には全く同じなのに、何故なのでしょうか。 ちなみにそれぞれの電話番号セルをダブルクリックし、文字列のみコピーして同じことをすると、「一致する」になりました。 セルに見えないデータでもあるのかと、cleanをしてみましたが、セルをそのままコピーする方法だと、cleanをしても「一致しない」です。 一つ一つのセルをダブルクリック→文字列コピーをすればよいのですが、件数が多く手間です。 この2つのデータが見た目通り同じものだとされるためには、どのような方法があるでしょうか。

  • エクセルオートフィルタで余計なデータも表示される

    こんにちは。エクセルについて教えて頂きたいです。 あるデータベースにオートフィルタを付けているのですが、 ”空白セルのみ表示”にしているのに、絞り込んだデータの 下の方に 空白ではないのに表示されている行があります。 一度オートフィルタを外して再設定すると消えるのですが、 データが増えるたびに毎回このような状態になってしまいます。 どのようにすれば直るのでしょうか? 検索してみたのですがどんなキーワードを入れれば良いか 分からずうまく検索できなくて、こちらに質問させて頂きました。

  • エクセル2003 VBAで セル内を 一発呼び出し

    エクセル2003 オートフィルタではなく VBAで セル内を 一発呼び出ししたいので。  よろしく お願いします。 表 列A~E(結合2行) :商品名と内容   列H~K(結合2行) 住所氏名電話番号を記載してます。 1年分を オートフィルターで  氏名 や 商品名で 探すのは 結構 時間がかかります。 同じものが ほぼ少ないため。。。 そこで  たまに 同じ氏名  同じような 品を 検索する セルを 2個ほど作って  そこへ セル1へ 商品名を入力すると  該当する 行のみ 表示される。 セル2に 名前をを入力すると  該当する 行のみ 表示される。 また、セルを赤色に塗った部分の結合行(2~3行)を 赤色に塗りつぶした行のみ 表示も できれば うれしいです。 コマンドボタン等を使ってもいいので お願いします。 そんな VBAを 作っていただけませんでしょうか^^; お手数おかけしますが どなたか よろしく お願いします。 

  • エクセルでのデータのあいまい検索のVBAについて

    VBAかマクロで作成したいと思いますが、あいまい検索ができずに困っております。 どなたかご教授お願いできますでしょうか? 一応画像を添付しておりますが大変見にくく申し訳ないです。  一つのファイルで2枚のワークシートを使用してデータのあいまい検索をしたいと思っております。 画像1の方のワークシートがSheet2になっていてこちらの”I”の列に入力しているデータが画像2になりますが登録商品リストの”G”の列に含まれているかを検索したいと思います。 その結果は”Sheet2”の緑色の部分”I”のセルにデータがあれば”*”をJのセルに表示したいと思います。 登録商品リストには長いもので桁数が30桁近いものもありますがこの桁数を8ケタくらいまでの一致でSheet2のIの列のデータと照合して結果をJに表示できればと思っております。何卒ご教授くださいますようお願いいたします。 照合するデータにつきましては、その日によって件数が違いますので、Sheet2のI列にあるデータが200件くらいの時もあれば2000件くらいの時もございます。 登録商品リストは登録するたびに量が増えていくので照合件数も増えていくことになりますので、どちらも1行指定でできればべすとだとおもっております。

  • 検索条件に合うセルの個数を数えたい

    EXCELで顧客管理表を作っています。 顧客データ一覧の特定の項目の中から条件にあうセルがいくつあるかを数えて 同シート内に個数を表示させたいと思っているのですが、うまくいきません。 (今回の場合は項目が「支店」で、○支店を含むデータが何個、×支店を含む データが何個…といった感じです) また顧客データは毎日追加していき、オートフィルタを使った場合には表示 されているデータの中から検索、という形が希望です。 COUNTIF関数を使ってみたのですが、オートフィルタをかけた場合でも 全てのデータから検索されてしまうので、もし他の関数もしくは方法を ご存知でしたら教えてください。 よろしくお願いします。

  • 郵便番号のハイフンを入れたい エクセル2000

    エクセル2000で文字列のセルに 1234567 のように7桁郵便番号が入っています。 これを 123-4567 のように前から4桁めにハイフンを入れる方法を 教えていただけませんでしょうか。 *データ件数が3万件ほどあり、その変換のためです。

  • Excel でのデータの並べ替えについて

    会員情報の表を作りました。( Excel 2003 ) 「会員番号」「会員名(カナ)」の先頭行にオートフィルターを設定し、「会員番号」「会員名(カナ)」で並べ替えをできるようにしています。 データ入力等で不必要なセルを触らないように「シートの保護」を設定したのですが、オートフィルターによる並べ替えが出来なくなってしまいました。 「▽」をクリックするとメニューが出るのですが、「~並べ替え」をクリックすると「変更しようとしているセルは~読み取り専用となっています。~」のメッセージが出ます。 オートフィルターを使えるようにする方法を教えてください。 (Excelのバージョンは 2003です) セルの書式設定で「ロック」は指定していません。 「シートの保護」での設定。  □ ロックされていないセル範囲の選択  □ 並べ替え  □ オートフィルターの使用 にチェックを入れています。

  • Excelで可視セルの行番号取得

    Excelでグラフ(散布図)のポイントをクリックしたときに、そのグラフ上の何番目かを所得してレコード情報をフォーム上に表示するように作成しました。 しかし、オートフィルタで絞り込んだ場合には取得した番号と行番号が一致しないので困っています。 そこで質問なのですが 1.可視セルの何番目というような取得方法はあるのでしょうか? 2.それともグラフからポイントの何番目というのではなく、元データの行番号は取得可能でしょうか? 分かりにくい質問で申し訳ないのですが、よろしくお願いします。

専門家に質問してみよう