• ベストアンサー

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

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

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

  • ベストアンサー
  • gyouda1114
  • ベストアンサー率37% (499/1320)
回答No.4

>(1)1桁目の数字が1、2、3、4の四つの場合の行を抽出することは可能でしょうか?オートフィルタオプションでは「or」条件で例えば1、2の二つの場合の行の抽出はできるのですが。< 作業セル1桁目の数字 B2に =LEFT(A2,1) 下方にオートフィル オートフィル オプションで「1以上」「AND」「5より小さい」で数字が1、2、3、4の四つの場合を抽出される オートフィルタ - オプション   http://www.eurus.dti.ne.jp/~yoneyama/Excel/filter.htm#option >(2)6桁の数字があるとして5桁目が5の数字の行を抽出することは可能でしょうか?オートフィルタオプションでは「~で始まる」や「~で終わる」行の抽出はできるのですが。< 作業セル 5桁目の数字 C2に =MID(A2,LEN(A2-1)-1,1) 下方にオートフィル オートフィルで「5」を抽出 お試しを

その他の回答 (3)

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

完成(完遂)するまでの時間的(このコーナーに質問ー回答を待つー学習習得ー応用に1週間ぐらいかかる)なことを考えて、そんなことをするより 作業列(空き列)に (1)1桁目の数字が1、2、3、4の四つの場合の行 (2)5桁目が5の数字の行 を関数を使ってサイン(コード0,1など)を出して、それを用いてフィルタを行うと良い。 ーー >1、2の二つの場合の行の抽出はできるのですが 3,4が加わってもそんなに複雑化しない。OR関数を知っているのかな。 例データ A列  B列 1111 1 2222 1 3333 1 4444 1 5555 6666 7777 8888 9999 B1の式は =IF(OR(LEFT(A1,1)="1",LEFT(A1,1)="2",LEFT(A1,1)="3",LEFT(A1,1)="4"),1,"") 下方向に式を複写する。 他にVLOOKUP関数でもできそう。 式は =IF(ISERROR(VLOOKUP(LEFT(A1,1),$F$1:$F$4,1,FALSE)),"",1) F1:F4には文字列で1,2,3,4を入れておく場合の式。 >5桁目が5の数字の行 5桁目の1桁を取り出すのは、MID関数を使う。 ーー 作業列に該当のサイン1や桁に関する文字列が出てしまえば、 あとはフィルタオプションの設定で出来る。 ーー こんなのはVBAを少し勉強して、最終行まで各行について 条件に該当するかどうかの判定プログラムを組み、該当すれば他シートにその行をコピーすれば簡単な事。 そのときもVBAでのMid関数やOrが使える。

  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.2

(1)フィルタオプションを使って下さい。 (2)エクセルの数値の扱いは融通無碍なところがありますが、相手が数値だと、?5????ではヒットしませんね。作業列を作って、=text(A1,"0")とかで文字列にしてやり、それに対してフィルターをかけるとヒットします。 ご希望に添わない内容だと思いますが、ご参考まで。

  • te12889
  • ベストアンサー率36% (715/1959)
回答No.1

いわゆる「作業列」を作って、IF関数にLEFT関数やOR関数などを組み合わせて該当行に印を付け、それをオートフィルタで拾い出すってのが、素人に毛の生えた程度の私としては何とか可能な方法ではなかろうかと思います。

関連するQ&A