• ベストアンサー

オートフィルタ #は使えない?

フィルタでこういうことはできないですか? A1→番号 A2→T1234 と言う文字が入っています。 この状態で1行目にフィルタをかけて、 抽出条件で「T####」を含む としてもT1234が引っかかりません。 Tで始まり、数字が4ケタ続く行を抽出したい場合 どうすればいいのでしょうか?

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

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

オートフィルタ(Excel)では「?」と「*」以外の文字では、検索などの処理を行うことはできません。 もし、大文字のTから始まってそのあとに4つの数字が入力されている行のみ抽出したいなら、以下のような数式を使用したフィルタオプションの設定を利用します。 準備として以下のような抽出条件の数式をC2セルに入力します(C1セルは空白または検索条件と入力しておけばよい)。 =AND(EXACT(LEFT(A2),"T"),ISNUMBER(MID(A2,2,4)*1)) データタブの「詳細設定」で、リスト範囲をA列のデータ範囲を選択し、検索条件範囲をC1:C2セルにしてOKすれば対象のデータが絞り込まれています。 ちなみに、上記の数式の意味は左1文字が大文字の「T」で2文字目から4文字分のテキストが数値という条件式になっています。 通常なら、上記の数式で対応できるのですが、例外的に2文字目から4文字の部分がすべて数字でない場合も数値と判断される文字列があります。 すなわち、T1.23などの文字列やT1-23などの文字列はその4文字が小数点の数値であったり、日付と認識され抽出対象になってしまいます。 これらを避けるには、以下のような数式で対応することになります(エラーは抽出対象外になります)。 =AND(EXACT(LEFT(A2),"T"),SUM(MID(A2,{2,3,4,5},1)*1))

ZYGMMMYTRDNP
質問者

お礼

ありがとうございました。

その他の回答 (2)

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.2

>Tで始まり、数字が4ケタ続く行を抽出したい エクセルのオートフィルタ(あるいは検索機能)はそこまで高性能ではないので,「4桁の数字」を検出する機能はありません。 敢えて出来るとすると,同じ内容をA列とB列に再掲しておいて A列は T???? と等しい さらに B列は T0000以上 かつ T9999以下 などのようにして,3段階で絞り込まないと出来ません。 #TabcdとかT001とかT12345とかを排除できないということです。  あなたの「実際のデータ」においてそういうのを無視してよければ,その条件を織り込んで手順を減らせる可能性はあります。 または隣のB列(あるいは離れたX列)に B2: =AND(LEFT(A2)="T",LEN(A2)=4,ISNUMBER(MID(A2,2,4)*1)) 以下コピー などのように検査列を用意,その結果でオートフィルタを使い絞り込む ような方法でもオートフィルタを使うことはできます。 何かの理由でどーしても列を増やしたくなければ,オートフィルタではなくフィルタの詳細設定(旧フィルタオプションの設定)を使い,条件(クライテリア)を前述したように作成して絞り込む方法もあります。

ZYGMMMYTRDNP
質問者

お礼

ありがとうございました。

  • slimebeth
  • ベストアンサー率61% (497/812)
回答No.1

>Tで始まり、数字が4ケタ続く行を抽出したい場合 その場合のワイルドカードは「?」を使います。 T???? ですね。

参考URL:
http://officetanaka.net/excel/excel2010/018.htm
ZYGMMMYTRDNP
質問者

お礼

ありがとうございました。

関連するQ&A

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

    エクセルのオートフィルタについて以下の2つの作業が可能であれば教えて下さい。 (1)1桁目の数字が1、2、3、4の四つの場合の行を抽出することは可能でしょうか?オートフィルタオプションでは「or」条件で例えば1、2の二つの場合の行の抽出はできるのですが。 (2)6桁の数字があるとして5桁目が5の数字の行を抽出することは可能でしょうか?オートフィルタオプションでは「~で始まる」や「~で終わる」行の抽出はできるのですが。

  • excelのオートフィルタ

    excelのオートフィルタで数字の絞りができない。4桁の数字が、1列に約1000行あります。 ある数字の先頭で始まる数字だけを抽出したい。たとえば、2で始まる数字だけ を抽出したい場合のやり方を教えてください。

  • excel 2003 オートフィルタ!

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

  • オートフィルターで表示されない数値

    件数が35000件ほどあるリストで、4桁の数字と頭に0000のつく数字が同じ列にあるのですが、フィルターのオプションで特定の数字を入力して検索しても頭に「0000」がつく数値しか検索されません。 たとえば、「25○○」と「000025○○」だけを抽出したくてオプション→「25」を含む で検索すると、「000025○○」だけが検索されます。 25以外で試しても、4桁の数字は全く表示されません。 間に空白行はなく、書式もすべて文字列に変えてやってみたのですが、結果は変わりませんでした。 原因等、教えて頂けますでしょうか。 よろしくお願いします。

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

    エクセルのオートフィルタについてですが、一番取り扱いに困っている所は、社員の給与リストとかで、ある特定のデータ、例として事務員(一つの行の例えば一つのセルに名前、一つ横のセルに給与の数字(数値データ)がはいっている)を抽出した場合(事務員の記号がどこか同じ行にはいっているとして)数値の列を開いているセルで関数処理したい場合、表示されている数字だけを処理する場合と隠れている(多分)データも処理してしまう場合があり大変戸惑っています。なんとかどちらかに統一したいのですが、自分なりに調べましたが分かりません。どなたかご存知ないでしょうか。また、このオートフィルタで特定の数字や文字を抽出しようとしてもうまくいく時とそうでない時があります。なぜなのでしょうか。これはバグと考えても?

  • オートフィルタについて(再)

    excelにて下記のようなファイルを作成しました。 項目にてオートフィルタを実行し、抽出したい項目を 選択するのですがうまく抽出できません 1 品名 サイズ 員数 2 A  100  300 3    200  400 4 B   500  600 (品名2行目、3行目はセルの結合を実施しています。) ↓品名にてオートフィルタを実施 品名 サイズ 員数 A  100 300 2行目が抽出されない。 うまく抽出できる方法ありますでしょうか? よろしくお願いします

  • オートフィルターの抽出されない条件とは

    シートに8列の項目があり項目に対応する文字列を入力しているブックがあります。A列に識別コード(主キーみたいな感覚で)作成してこれまでは Sheet1.Range("A1").AutoFilter Field:=1, Criteria1:= _ "=*08??", Operator:=xlAnd として抽出したい文字列だけ抽出できていました。 今回、別の識別コード(具体的には月日です)をA列に新たに挿入して同じように抽出を試みましたが、何も抽出されず文字列が入力されている最終行の次の1行以前が消えてしまいます(空欄が抽出された)。しかし、完全一致であれば抽出できます。なぜでしょうか?  ちなみに新しい識別は月日なので4桁の数字で10月10日→1010というようにしています。これで10月の行を抽出したいので"=10??"で抽出をかけてみたりしているのですが・・・。

  • オートフィルタ後の、マクロでの値の参照に関して

    オートフィルタ後の、マクロでの値の参照に関して 下記を悩んでいます。教えて頂ければ幸いです。 マクロで、あるデーター表から、オートフィルタを使用し、必要なデーターを 抽出し、マクロ内に戻し、その後の計算で使用したいと考えています。 A列、B列、C列にそれぞれ、検索条件を指定し、オートフィルタ後、下記のような状態になります。 参照したい値は、D列になります。 下記のような例では、2.5と2.7の値をマクロ内に戻したいです。 (例:オートフィルタ後) 1行  A▼  B▼  C▼  D 16行 **  **   **  2.5   20行 **  **   **  2.7 *2~15行目は見えなくなっています。 *17~19行目は見えなくなっています。 セルを参照し、マクロ内に戻すには、どのような構文(マクロ)の記述が必要でしょうか? 【備考】 ・上記の例では、セルはD16、D20となりますが、抽出条件によっては、行番号が変わってしまいます。 ・抽出後のD列のデーター数は、常に2つです。 よろしくお願いします。

  • マクロ オートフィルタで困っています。

    マクロ オートフィルタで困っています。 1列目と2列目からそれぞれ条件をフィルタで抽出し、抽出された行を削除するマクロを組んだのですが(下記)、Bの条件が表にない場合に2行目から下が全て削除されてしまいます。 元の表は毎週変わるため、抽出する条件があるかないかはその時次第です。 オートフィルタにこだわってはいませんが、その他の抽出方法もいまいち分からず……。 どのようにすればよいのか、教えていただけますでしょうか。 宜しくお願い致します。 <マクロ> Sub Macro() Selection.AutoFilter Field:=1, Criteria1:="A" Selection.AutoFilter Field:=2, Criteria1:="B", Operator:=xlAnd Dim gyou(1) As Long gyou(0) = 2 gyou(1) = Range("A1").CurrentRegion.Rows.Count Rows(gyou(0) & ":" & gyou(1)).Select Selection.Delete Shift:=xlUp End Sub

  • エクセルのオートフィルターの使い方

    エクセル2010で1000行程度の表からオートフィルターで必要な情報を抽出しているのですが、該当する条件を▼セルで探すのも面倒なので、所定のセルに条件を入力したらオートフィルターで抽出できる方法があれば教えてください。

専門家に質問してみよう