• ベストアンサー

フィルタ内で指定するエクセル関数を教えて下さい!

6桁の商品番号で管理している商品テーブルがあります。それにはフィルタがかけられてます。商品番号の下2桁が30番台と40番台のもの(****30~****49)だけを表示させたいのですが、フィルタのオプションの中でどういうエクセル関数を設定すればいいのでしょうか? 教えてください。どうぞお願いします。_(>_<)_

  • mymym
  • お礼率71% (234/328)

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

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

例えばA1セルに商品番号と文字があり2行目以降にデータがあるとします。 作業列としてB1セルには30-49選択とでも入力します。 B2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(A2="","",IF(AND(RIGHT(A2,2)*1>=30,RIGHT(A2,2)*1<50),1,"")) 該当の商品番号には1が表示されますのでB列のフィルタで1を抽出すればよいでしょう。

mymym
質問者

補足

なるほど、列を1つ追加した上でフィルタをかける訳ですね。 ちょっと疑問なのは、「*1」は、何か意味があるんでしょうか? 無くてもいい様な気がするんですが、何か役割があるのかな。。と思いまして。。。 それと、できれば関数の列を追加せずに、フィルタ機能だけで抽出する方法はやはりないでしょうか? 列を追加するとフィルタを一旦解除してまたフィルタをかける、という手間が発生し、もともと抽出されていた条件が解除されてしまいます。 欲を言えば、もともとフィルタされているデータをさらにフィルタするという方法があったらいいな、と思います。 ご存知でしたらどうぞよろしくお願いします。

その他の回答 (2)

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

質問に実例を挙げたほうが判りやすいと思う。 >それにはフィルタがかけられてます この状態(結果)から、またフィルタを重ねるのでしょうか。 (下記(注1)説明参照) 例データ 4桁の例にします。 下記データは文字列で入力したもの A列 番号 1234 2345 3212 5623 2334 1251 条件としてF1:F2に 番号 ??3? フィルタオプションの設定 リスト範囲 $A$1:$A$7 検索条件範囲 $F$1:$F$2 抽出する範囲 $D$9:$D$17 で 結果 $D$9:$D$11は 番号 1234 2334 に鳴りました。こういうので良いのでしょうか。 ==== (注1) 例データ 番号 区分 1234 1 2345 1 3212 1 5623 1 2334 1 1251 1 3457 1 2239 1 3456 2 4431 2 のデータで 区分の1をフィルタ足した状態で 上記をやったところ 結果は 番号 1234 2334 2239 4431 で4431が出てきてしまう。 当初のフィルタ条件もフィルタに書き込まないとダメのようだ。 番号 区分 ??3? 1 のように。

mymym
質問者

補足

ありがとうございます。 バージョンが違うのか、私の使ってるエクセルで、 >リスト範囲 $A$1:$A$7 >検索条件範囲 $F$1:$F$2 >抽出する範囲 $D$9:$D$17 のような設定できる場所はなかった気がします。。 (今は自宅でこれを見てますが、会社はネット制限があり、ここでのご回答を見ながら確認することができません。明日会社で確認します) >この状態(結果)から、またフィルタを重ねるのでしょうか。 そうです。 回答番号:No.2での補足で書いたように、フィルタを重ねることによって、段階的に範囲を狭くしながら、データを追っかけて確認していけるような方法を探しています。

  • ahirudac
  • ベストアンサー率46% (84/180)
回答No.1

EXCELのバージョンによって違いはあるかもしれませんが、手元には2007しかないのでそちらで確認しました。 前提条件として商品番号はすべて6文字であるとします。 まず▽を押して「テキストフィルタ」「ユーザー設定フィルタ」とします。条件設定に次のように指定します(「AND」「OR」は「OR」を選択)。 「????3?」「と等しい」 「????4?」「と等しい」 こうすることで30番台と40番台が抽出できると思います。 ご参考までm(__)m。

mymym
質問者

補足

ありがとうございます。 会社ではネットが制限されてるので、今は自宅からこれを書いてます。 なのでバージョンは今わかりません。 今日試しにやってみたのは、 フィルタでオプションを選んで、 左側に「=right(A:A,2)>30」と入力、右側で「以上」を選択 で抽出かけてみましたが、何も表示されませんでした。 明日、左側で「=right(A:A,2)=3」、右側で「と等しい」、 ORを選択して、さらに下欄で左側で「=right(A:A,2)=4」、右側で「と等しい」 を試してみます。

関連するQ&A

  • エクセルのフィルター

    エクセルのフィルター で質問があります。 施設を管理している会社です。駐車場を借りてくれてる人の住所録を作成しました。 名前、電話、登録番号等…(それぞれセルを別にして 品川 ろ 332 なども別にしました) (車は登録番号が4桁ですが 2桁の人も3桁の人もいます。)  例)3697の車番を抽出したかったので4桁の番号の中で3を含むでオプション設定をしました。しかし、全く抽出されません。 もちろん実際はいますし、他に3のつく車番の人はいます。  何が悪いのかわかりません。

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

    エクセルシートにデータが3000個近くあるんですけどオートフィルタで「すべて」を選んでもリストの中には3000個全部が表示されません。 どうしたらよいでしょうか? 番号    x 4562    1 25466   1 23694   1 21456   1 58498   1 4588     1 5787    1 8946    1 14586    1 85446    1  ・     ・  ・     ・ このように数値がバラバラに並んでいて見たい数値(例えば8946)がエクセルシートの表の中にはあるのにオートフィルタのリストをクリックして、見るとそこには8946がないんです。「すべて」を選んでるのにリストをクリックしてもないのはどうしてでしょうか?オプションの設定で範囲もきちんとしたんですが。数に制限でもあるんでしょうか?お願いします。

  • エクセルのオートフィルタの参照桁数の限界ってあるの?

    お世話になります。 エクセルでオートフィルタを使ってデータを抽出しているときに、200件超?くらいのところから、どうも抽出対象外になっているような気がするのです。 うまく説明できなくて申し訳ないんですが。 例:オートフィルタで125番目くらいを指定するとちゃんとそれ以外は表示されてない状態で画面上見れるんですが、212番目など200を超えたくらいを指定すると、その順番のみを表示するのではなく、そのちょっとした(すぐ下の行とは限らず、300番目以降とか)を一緒に表示されるんです・・。 フィルタの範囲内に入ってるときってセル番号?一番左の桁をあらわす番号が黒から青になっているんですが、表示されてしまういらないデータ(この場合の300番目以降)は黒のままになっています。 単に、フィルタをかける範囲が自動認識できてなくて・・ってことなんですかね・・。 うまく説明できてないので、わかりにくくてすみません。 限界があるのか(●●番目までしか見に行かないとか)だけでもかまいませんので教えてください。 ・・書きながら『フィルタかけるたびに毎回、範囲指定しないといけないのかも・・』と思えてきました・・・。

  • エクセルで指定した数字を含む検索について

    初歩的な質問で申し訳ございません。 添付のような表があり、現在はA列にオートフィルタをかけて数字下二桁を入力後、ソートがかかった商品表示され、日付の 列に個数の入力を行っています。(A列の番号は20桁位あるので、実際は下4桁で検索しています。) 【現在の作業】 A列にオートフィルタから下4桁入力後に検索→日付の列に個数を入力→また検索 【理想の作業】 ある程度、検索する商品の番号の下4桁をどこかに候補として挙げ、その数字を含む行だけ表示→一気に個数だけ入力 VBAでもマクロの記録でも何かよい方法はございませんでしょうか? イメージとしては、1行目から5行目にあるオレンジのボックスの中に検索したい商品の番号4桁をいくつか入力し、それに該当する商品だけを7行目のA列から検索し、その枠ごとに記載された数字を含む行のみソートされ表示されるようにできると助かります。 どうぞよろしく御願いいたします!初歩的な質問で申し訳ございません。 添付のような表があり、現在はA列にオートフィルタをかけて数字下二桁を入力後、ソートがかかった商品表示され、日付の 列に個数の入力を行っています。(A列の番号は20桁位あるので、実際は下4桁で検索しています。) 【現在の作業】 A列にオートフィルタから下4桁入力後に検索→日付の列に個数を入力→また検索 【理想の作業】 ある程度、検索する商品の番号の下4桁をどこかに候補として挙げ、その数字を含む行だけ表示→一気に個数だけ入力 VBAでもマクロの記録でも何かよい方法はございませんでしょうか? イメージとしては、1行目から5行目にあるオレンジのボックスの中に検索したい商品の番号4桁をいくつか入力し、それに該当する商品だけを7行目のA列から検索し、その枠ごとに記載された数字を含む行のみソートされ表示されるようにできると助かります。 どうぞよろしく御願いいたします!

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

    エクセルのオートフィルタの条件設定について 毎日、システム部の方からの全社員にエラーリストが送られてきます。 その中に、自分の担当会社が含まれていればエラー対応をするのですが、 自分の担当会社を一発で表示させることは可能でしょうか? ・A列に5桁の会社番号が入っていて、B列以降に会社名以下のデータが入っている ・システム部から送られてきた時点で、オートフィルタが設定されている ・共有ファイルなので、関数を入力したりなどの変更は加えれない 今現在、オートフィルタの▽からオプションで、自分の担当会社番号をいれてフィルタをかけているが、 2つまでしか会社番号を入れれない。 自分が担当している会社は5社あるので、この作業を3回繰り返している。 抽出条件を工夫して、1回の作業でできるようになりたい。 よろしくお願いいたします。

  • Excel 関数を教えてください

    こんにちは。関数をほとんど使ったことがないので、初歩的な関数でできるのかもしれないのですが、自分で関数を使ってやってみるものの・・・ うまくいきません。関数を使って区分わけを自動でできるようにしたいのですが すみませんが、関数に詳しい方教えてください。 コードから3区分したいのですが、 コードは001-001、101-001、002-001,002-002、003-001などです。 コード(A列)、ふり番号(B列)にデータは入力してあります。 まずは1つ目に最初の3桁で001→1、101→2とゆうふうに値を返したいのです。 2つ目はコードそれぞれを001-001→1、002-001→2、002-002→3・・・と値を返したいのです。 最後にふり番号を使って1~1999→1 10000番台→2 50000番台→3 と区分したいのです。 宜しくお願い致します。

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

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

  • エクセル関数(VLOOKUP?)

    エクセル関数の組み方を教えてください。 表Aにランダムな5桁の英数字(商品番号)があります。 表B(表Aとは別のエクセルファイルファイル)に Aとは並び順の異なった5桁の英数字(商品番号)があり 商品番号のとなりのセルに、その商品が載っているページ数があります。 表Aの商品がどのページにあるのかを探したく Aの隣のセルに、その商品のページ数を表示させたいのですが VLOOKUPなどで組めますでしょうか? -- A 00001 00005 00002 00006 -- B 00007 8 00005 10 00003 1 00006 20

  • VLOOKUP関数で困っています。

    コード番号の下二桁を取り出して、その値を表から探し出して商品名を表示させる作業をVLOOKUPで設定しようとしていますが、うまくいきません。 おそらく、下2桁を取り出したセルにはRIGHTB関数の計算式が入っており、取り出された2桁の文字列ではなく、計算式を表の中から探し出しているようでN/Aのエラーメッセージです。このような場合、どのようにすればよいのでしょうか。

  • エクセルでフィルター結果をSUBTOTALする

    エクセル2010で、フィルターの結果をSUBTOTAL関数でB1セルに表示したとして、その横のセルA1セルにフィルターした項目を表示させたいのですが。 例えばSUBTOTALした「合計金額」が何の項目かを表示させないと分かりにくいので何か方法があれば教えてください。 フィルターオプション以外の方法でお願いします。

専門家に質問してみよう