【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集

セルの値が数値でなく、コードナンバー形式のアルファベットの文字列の場合、○○より大きい、○○以下である、○○のアルファベット文字列を含んでいる、
AはB以上C以下であるとの条件区別でセルの操作をしたいのです。
 A         B         C
モデル名    台数     量産
Q40PHX      300      300   
CW-25YXB    250       空白
CT-32GXB    350      350
  ↓       ↓

のように3パターンしかないコード表が並んでいてCT-32GXB 以上 Q40PHX 以下のコードナンバーのものはB列のセルの台数をそのまま表示し、CW-○○から始まるコードナンバー量産品でないため、C列には台数を表示させたくないのです。

 IF(OR(A2>"Q",A2>"CT",A2<"CW"………)等の式を入力したりしていますが、思うようにCW-○○のC列の量産の列の台数表示が消えず、空白なりません。ORをANDに変えたりしていますが、上手く行きません。

 アルファベット順で行くとC列台数を表示させたくないCW-○○は昇順、降順でも上記3コードの中の中間ですので、『○○以上○○までの値を表示する』では上手く行かないのでしょうか?
 VLOOKUPのTRUE形式でも可能ですが、IF関数で条件区別、セル操作をしたいのです。A2>○<○のように条件式を設定するのでしょうか?ANDまたはOR以外の他の関数を極力ネストせずに演算子で簡単に条件指定、セル操作するにはどうすればよいのでしょうか?よろしくお願いします。

 

A 回答 (4件)

意味が良く解りませんが、、、


C2に関数を入れて、CWから始まる型番なら空白、それ以外ならB2の値を出すなら

=IF(LEFT(A2,2)="CW","",B2)
    • good
    • 0
この回答へのお礼

ご返答有難うございます。
説明いただいた数式で簡単にできました。
あまり多くの関数を使えないもので、こんなに簡単に出来るとは知らず、助かりました。
本当に有難うございました。

お礼日時:2005/09/10 19:41

こんにちは。



> IF(OR(A2>"Q",A2>"CT",A2<"CW"………)等の式を入力したりしていますが
>○○より大きい、○○以下である、○○のアルファベット文字列を含んでいる、

きちんと、文章で条件を書いて欲しかったですね。その等号式では良く分りません。

C2:~フィルダウン・コピー
=IF(OR(LEFT(A2,1)>"Q",AND(LEFT(A2,1)="C",AND(MID(A2,2,1)>"T",MID(A2,2,1)<="W"))),"",B2)

>ANDまたはOR以外の他の関数を極力ネストせずに演算子で簡単に条件指定、セル操作するにはどうすればよいのでしょうか?

それから、OR やAND やネストを使わないで作りたいというなら、マクロやVBAの質問になってしまうような気がしますね。
    • good
    • 0

>セルの値が数値でなく、コードナンバー形式のアルファベットの文字列の場合


こんなの普通の仕事でよくあることです
>、○○より大きい、○○以下である、○○のアルファベット文字列を含んでいる
文字列の比較を行ったときの大小の規則を、十分勉強すべきです。
>セルの操作をしたい
以下のことはセルの操作とはいいません。
>CT-32GXB 以上 Q40PHX 以下のコードナンバーのものは
下記のモデル名で
Q40PHX     
CW-25YXB
CT-32GXB   
での順序が、ソートしたとき、この順序になると思っているのですか。
ではないですよね。ソート(並べ替え)すれば判るように
CT-32GXB
CW-25YXB
Q40PHX 
の順です。
ですから、「CT-32GXB 以上 Q40PHX 以下」の判定をしてもだめです。
CW-25YXB が含まれてしまい、目的に沿わないでしょう。
以上のことは、質問後半ではご存知のようにも取れることが書いてある。
しかし、前半は書く質問に書く必要なし。
質問には原則として、自分の苦闘・検討段階を書く必要なし。
質問目的がぼやけるだけ。
回答しようとする人なら知っているだろうようなことは書く必要なし。
ーーーーーー
結局は
「CW-○○から始まるコードナンバー」分は(C列に)表示しない
が目的ではないのですか?
それなら
=IF(MID(A1,1,3)="CW=",A1,"")
だけでは、ダメなんでしょうか。
>(1)VLOOKUPのTRUE形式でも可能ですが、IF関数で条件区別、セル操作をしたいのです。(2)A2>○<○のように条件式を設定するのでしょうか?(3)ANDまたはOR以外の他の関数を極力ネストせずに(4)演算子で簡単に条件指定、セル操作するにはどうすればよいのでしょうか
自分の検討過程を述べているのでしょうが、見当はずれです。(1)ー(4)ともこの場合に使う方法ではないでしょう
    • good
    • 0

>CT-32GXB 以上 Q40PHX 以下のコードナンバーのものはB列のセルの台数をそのまま表示し、



というご質問文からは、

CT-32GXA
CT-32GXB
────
CT-32GXC
 …
CW-25YXB
 …
Q40PHW
────
Q40PHX
Q40PHY

という区切りになりそうですが、その後書かれている条件式などから、

CS
CT
────
CU

CW

P
────
Q
R

ということでもよろしいのでしょうか。

もしそうであれば、C2に
=IF(AND(A2>="CU",A2<"Q"),"",B2)
または、範囲選択を逆にして、
=IF(OR(A2<"CU",A2>="Q"),B2,"")
として、以下コピーでいいと思います。

しかし、
>CW-○○から始まるコードナンバー量産品でないため、C列には台数を表示させたくない

ということで、「CW-○○から始まるコードナンバー」のものだけ非表示にされたいのであれば、C2に
=IF(LEFT(A2,2)="CW","",B2)
で以下コピーの方がいいと思います。
    • good
    • 0
この回答へのお礼

 早速のご回答有難うございます。簡単なことですが、それが中々、具現化できませんでした。教えていただいた数式を当てはめるとその通りになりました。
まだまだ、スキルが低いもので大変、参考になりました。符号と順序を整理していると、頭がゴチャゴチャになり、迷路に入っておりました。
 どうもすみませんでした。

お礼日時:2005/09/10 19:46

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