• ベストアンサー

Excelオートフィルター機能で数列の検索

図書の管理をExcelVBAでしています。 洋書で図書名を検索をするのに図書名の一部をテキストボックスに入れさせて”含む”とい設定で検索しています。 数列だけの図書名「1984」がこの条件(”1984”を含む)でフィルターをかけてもヒットしません。”等しい”でフィルターをかければヒットします。 ちなみに「19」を”含む”で検索すると英字と”19”を含んだ図書名はヒットされますが、「1984」はヒットされません。 数列は数値とみなすのでしょうか?

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

  • ベストアンサー
  • myRange
  • ベストアンサー率71% (339/472)
回答No.1

お気づきのように"数値"だからでしょう。 図書名を入力する前に図書名のセルの表示形式を"文字列"にしておいてから入力すべきでした。 で、少なくとも数字のみの図書名は文字列に直さないといけないわけですが、 該当が少なければ簡単には次のようにするといいでしょう。 例えば、「1984」のみの図書名だったら 1984の前に '(半角シングルクォーテーション)を付加してやります。  '1984  ← こんなふうに   これで文字列になりますので質問の件はうまくいきます。 以上です。  

Dory-R
質問者

お礼

早速の回答ありがとうございました。 「'1984」 と書名を入力し直しましたらオートフィルターで <「1984」を含む>でもヒットしてくれました。 全角で「1984」としたらヒットしませんでした。 普通は全角、半角どちらもおなじにみてくれるのにおかしいですね。 数列の書名は今のところ一件だけですが今度出てきましたら気を付けます。 どこかで読んだ気がしないでもありませんでした。 Excelをもう少し勉強しないといけないですね。 お陰ですっきりしました。ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Excel2003 オートフィルタで「~で始まる」が機能しません

    いつもお世話になってます。 エクセルのオートフィルタ機能で特定の条件を満たす値(数値)を抽出したいのですが なぜか全く機能しません。 例えば、「123456」という文字列が縦列の中に含まれていて 「▼」をクリックして「オートフィルタオプション」より、 123「で始まる」値を抽出したいんですがHITしません。 しかし、123456「と等しい」であればHITするんです。 同様に、123456「より大きい」や123456「以上」もHITします。 セルの表示形式では「数値」になってます。 「標準」にしても「文字列」にしても同様の結果です。 「123456と等しい」のに123で始まらないの!? とグチを言いたくなるくらい困ってます・・・ どなたか、ヒントだけでもいいのでアドバイスお願いします。

  • エクセル 検索マクロ オートフィルタでする方法

    はじめまして。 エクセルで上部にテキストボックスと検索ボタンを作り、 検索ボタンを押したらテキストボックスの内容を 検索し、オートフィルタで抽出するマクロを作りたいのですが、 いくら頑張ってもエラー等で作れません。 どなたかご教授ください。 A列に用語、B列に用語の説明、C列に用語の分野というシンプルな 用語集というデータです。 主にA列の用語をテキストボックスに入力し検索ボタンで検索。 部分一致でも検索され、一致するものを オートフィルタ同様に抽出するというマクロです。 結果がなければボアアップウインドウでありませんっとか出るようにしたいです。 何卒よろしくお願いいたします。

  • excel 2003 オートフィルタ!

    excel 2003で、オートフィルタがうまくいきません。 A列の2行目から、1~5までの数字がランダムに並んでいるとします。 A1セルをオートフィルタし、 条件を、オプション>3を含む で指定すると、3がフィルタされてほしいのですが 1つも抽出されません。 3で始まるもだめでした・・ フィルタで抽出するマクロをくんでいて 列は、20列以上あり、 列によって、文字や数値があります。 フォームで列を選び、検索文字を入力して Criteria1:="=*" & 検索文字 & "*", Operator:=xlAnd と言う感じでフィルタしています。 文字はできますが、数値ができないのは、なぜでしょうか・・・

  • EXCELでオートフィルタのような条件検索を関数を使って作りたい!

    いつもお世話になっております。 タイトルのごとく、EXCELでオートフィルタのような条件検索を関数を使って作りたいのですが、 たとえば、フォームのコンボボックスを複数設置し、その条件にあう答えを、特定のセルに表示させたいと思っています。 コンボボックスは20個ほど(すべての条件が揃わなくても結果がでるようにしたいと思っています)、その答えは100個ほどあります。 かなり手間になるかもしれませんが、どなたかご教示願います!

  • Excelオートフィルタについて

    WindowsXPでExcel2000を使用しています。 Excelで管理している顧客リストがあるのですが、 検索するときにオートフィルタに引っかかってこないものが あります。 顧客会社名、担当者名などのカナ文字でフィルタにかけるのですが、 例えば「ハナコ」という担当者がセル上に存在しているにもかかわらず フィルタの選択肢に出てきません。 (「データ」→「フィルタ」→「オートフィルタ」の機能) キーボードで「ctrl」+「f」で検索するときちんと引っかかります。 どうしてでしょうか。 このファイルは18項目×3000件くらいのデータです。 また、全く別のファイルでも同じようなことがあります。 こちらはカナでフィルタにかけたときに、「ア」から「ナ」までの選択肢しか表示されません。 もちろんリストには「ニ」から「ワ」までの名称も並んでいます。 こちらのファイルは同じExcel2000で、三項目×1500件です。

  • エクセルでのオートフィルタに関して(マクロ)

    1行目にタイトルがある表がありましてその表に オートフィルタを掛けて条件を複数指定して検索・・・ここまで手作業。 その後マクロでヒットした行をコピーして別のシートにコピーしたり、ということを行っています。 もともとの表のデータ数は日々増減していて ほしい行の行数も毎回変わってきます。 検索した行をコピーするために選択すると Rows("2809:2809").Select こんな具合に 行番号で指定されるのでデータ数が増減すると うまくいきません。 検索条件を指定して検索した行を うまくマクロで指定することは出来るのでしょうか? 良い方法がありましたら御教授願います。 もう一点ですが 自動記録でオートフィルタの画面を開いたままでは「記録終了」できないですよね? マクロでフィルタ画面を開いて 検索条件を指定するところから手作業でするのは可能でしょうか? あわせてよろしくお願いします。

  • エクセルのオートフィルタオプションで日付を出したい。

    いつもお世話になっています。エクセルで、70人の名簿があるので、オートフィルタで「1月生まれ」の人だけを抽出したいです。 A: 「生年月日」という列に、70名それぞれの生年月日が入っている。1980年の7月26日生れなら「1980/7/26」と入力。 B: オートフィルタオプションで「(/1/)を(含む)」と条件づけるが、1件も抽出できない。 C: でも、検索で「(/1/)の(値)」を検索すると、ちゃんとヒットする。 あ: セルの表示形式→日付を「1980年7月26日」に変更してみる。 い: オートフィルタオプション「1月を含む」ではやはり1件も抽出できない。 う: でも「1月」を検索すると、ちゃんと1月と11月生まれの人がヒットする。 どうしても生まれ月ごとに抽出したいと思います。やはり、生年月日を「年」「月」「日」と別の列に分解するしか方法はないのでしょうか。どうかよろしくお願いします。

  • ExcelVBAでフィルタを複数条件にしたいのですが1つの条件にしか引

    ExcelVBAでフィルタを複数条件にしたいのですが1つの条件にしか引っかかりません。 例えばAの列で、1つは担当者名、もう1つは塗りつぶしの色などでフィルタをしたいと思っています。 2つの条件を入れるとどちらか1つ目にした条件にしか引っかからず2つ目の条件は無視されてしまう?ようです。 順番を入れ替えてみたり、いずれも1つだけにしてみたり、いろいろと試して、いくら調べても両方の条件でうまくいきません。 どうしたらいいでしょうか? そもそもテキストフィルタと色フィルタは同時には使えないのでしょうか? そのようなことが出来る方法はあるのでしょうか? どなたかご存知の方いらっしゃいましたら教えてください。 宜しくお願いします。

  • Access_vbaフィルタ機能

    現在テーブルに格納されている顧客情報から任意のキーで検索できる様、検索用フォームを作成しています。 複数条件(or)を用いる、あいまい検索(Like*)の式がうまくいかず苦労しています。 T_顧客情報(テーブル) フィールド名1:氏名(テキスト型) フィールド名2:氏名フリガナ(テキスト型) フィールド名3:住所(テキスト型) [氏名フリガナ]だけのあいまい検索の式は ME.Filter = "氏名フリガナ Like""*" & ME!テキストボックス名 & "*""" でうまくいきました。 住所だけのあいまい検索も同様にうまくいっています。 しかしこの2つをORでつなぐと『型が一致しません』のエラーがでます。 ME.Filter = "フリガナ氏名 Like""*" & ME!テキストボックス名 & "*""" Or "住所1 Like ""*" & ME!テキストボックス名 & "*""" よろしくお願いします。

  • オートフィルタの機能を別方法で出来ないでしょうか?

    A B C D コード 会社名 電話番号 FAX番号 1 2 3 のデータをオートフィルタ オプションの抽出条件の中の「含む」の 使用でA~Dをそれぞれ検索しておりますが、VLOOKUPのように、セルに入力できて、さらにヒットする行を複数表示の抽出は出来ないでしょうか? 希望は別シートです。 宜しくお願い致します。