重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

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

教えてください。どうぞお願いします。_(>_<)_

A 回答 (3件)

例えばA1セルに商品番号と文字があり2行目以降にデータがあるとします。


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

この回答への補足

なるほど、列を1つ追加した上でフィルタをかける訳ですね。

ちょっと疑問なのは、「*1」は、何か意味があるんでしょうか?
無くてもいい様な気がするんですが、何か役割があるのかな。。と思いまして。。。

それと、できれば関数の列を追加せずに、フィルタ機能だけで抽出する方法はやはりないでしょうか?
列を追加するとフィルタを一旦解除してまたフィルタをかける、という手間が発生し、もともと抽出されていた条件が解除されてしまいます。
欲を言えば、もともとフィルタされているデータをさらにフィルタするという方法があったらいいな、と思います。
ご存知でしたらどうぞよろしくお願いします。

補足日時:2009/11/12 23:05
    • good
    • 0

質問に実例を挙げたほうが判りやすいと思う。


>それにはフィルタがかけられてます
この状態(結果)から、またフィルタを重ねるのでしょうか。
(下記(注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)
例データ
番号区分
12341
23451
32121
56231
23341
12511
34571
22391
34562
44312
のデータで
区分の1をフィルタ足した状態で
上記をやったところ
結果は
番号
1234
2334
2239
4431
で4431が出てきてしまう。
当初のフィルタ条件もフィルタに書き込まないとダメのようだ。
番号区分
??3?1
のように。

この回答への補足

ありがとうございます。
バージョンが違うのか、私の使ってるエクセルで、
>リスト範囲 $A$1:$A$7
>検索条件範囲 $F$1:$F$2
>抽出する範囲 $D$9:$D$17
のような設定できる場所はなかった気がします。。
(今は自宅でこれを見てますが、会社はネット制限があり、ここでのご回答を見ながら確認することができません。明日会社で確認します)

>この状態(結果)から、またフィルタを重ねるのでしょうか。
そうです。
回答番号:No.2での補足で書いたように、フィルタを重ねることによって、段階的に範囲を狭くしながら、データを追っかけて確認していけるような方法を探しています。

補足日時:2009/11/12 23:32
    • good
    • 0

EXCELのバージョンによって違いはあるかもしれませんが、手元には2007しかないのでそちらで確認しました。



前提条件として商品番号はすべて6文字であるとします。

まず▽を押して「テキストフィルタ」「ユーザー設定フィルタ」とします。条件設定に次のように指定します(「AND」「OR」は「OR」を選択)。

「????3?」「と等しい」
「????4?」「と等しい」

こうすることで30番台と40番台が抽出できると思います。


ご参考までm(__)m。

この回答への補足

ありがとうございます。
会社ではネットが制限されてるので、今は自宅からこれを書いてます。
なのでバージョンは今わかりません。

今日試しにやってみたのは、
フィルタでオプションを選んで、
左側に「=right(A:A,2)>30」と入力、右側で「以上」を選択
で抽出かけてみましたが、何も表示されませんでした。

明日、左側で「=right(A:A,2)=3」、右側で「と等しい」、
ORを選択して、さらに下欄で左側で「=right(A:A,2)=4」、右側で「と等しい」
を試してみます。

補足日時:2009/11/12 22:48
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!