[[20201210190858]] 『複数条件で、条件付き書式したい場合』(こころ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『複数条件で、条件付き書式したい場合』(こころ)

指定セルに数値を入力していきます。
ただしこのセルには、「半角6桁」もしくは「半角14桁」しか入力してはいけません。
そのため、それ以外を入力したら赤く反転するよう「次の数式を満たす場合に価を書式設定(o):に以下の数式を入力し条件付き書式を設定しました。

条件1:=LEN(INDIRECT(ADDRESS(ROW(),COLUMN())))<>6
条件2:=LEN(INDIRECT(ADDRESS(ROW(),COLUMN())))<>14

ですがこれだと6桁でも赤く反転してしまいました。
条件1のみ(2のみ)であれば想定通りとなりましたが、複数の場合はどのように設定すればよいか教えていただけるとありがたいです。

< 使用 Excel:Excel2016、使用 OS:Windows10 >


 その式をORで一つの条件にまとめてしまえば問題ないかと思います。
 =OR(条件1,条件2)

 ところで、半角ならLENBのほうが良い気がします。
 LENだと全角も半角も1としてカウントしてしまうためです。

 また、条件付き書式は自動で配列を認識してくれるため、LENの中はセル指定だけで大丈夫かと思います。
 (多分それがしたいためのINDIRECTですよね?)
 例:書式設定がB列対象で、同じ行のA列と同じ値の時に赤くしたいとき
 =B1=A1 と設定するだけでB2=A2,B3=A3...と自動で比較してくれます。
(ななし) 2020/12/10(木) 19:36

 AND 関数じゃないですかね? ORではなく。

 ただ、そのINDIRECTの式を AND でひとつにしてもダメだと思いますよ。

 A1セルからだとして ↓ ではダメなんですかね?
 =AND(A1<>"",LEN(A1)<>6,LEN(A1)<>14)

 INDIRECTなら、N 関数を使って ↓ のようにすればできると思います。
 =AND(LEN(N(INDIRECT(ADDRESS(ROW(),COLUMN()))))<>6,LEN(N(INDIRECT(ADDRESS(ROW(),COLUMN()))))<>14)
         ~~~                                          ~~~
 なぜだか知りませんけど・・・

 以上
(笑) 2020/12/10(木) 23:24

 INDIRECT なら ↓ でいいかも

 =AND(LEN(INDIRECT("RC",FALSE))<>6,LEN(INDIRECT("RC",FALSE))<>14)

 空白セルにも色がつきますけど、いいんですかね?

 以上
(笑) 2020/12/11(金) 01:13

 ああ、すみませんそれ以外が赤くなるように、なんですね。
 6か14を赤くしたいのかと勘違いしていました。
(ななし) 2020/12/11(金) 09:20

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.