[[20070131090907]] 『重複する条件付書式』(みず) ページの最後に飛ぶ

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

 

『重複する条件付書式』(みず)

いつもありがとうございます。
条件付書式のことで教えてください。エクセルは2003です。

割と大きなデータがあり、見やすくするために条件付書式で
=MOD(ROW(),2)=0 を入れて、一行おきに色を付けています。
さらに、F列の中で「A」で始まる文字列がある場合は文字を赤色、
「B」で始まる文字列がある場合は文字を青色に表示したいので、
条件1に 
=COUNTIF(F列,"A*")
条件2も同じようにして、それぞれ赤と青の文字で表示するようにしてみました。
条件3は
=MOD(ROW(),2)=0
を入れています。

すると、AとBで始まる文字列のところだけ塗りつぶしがなくなり、文字の
色だけが付いている状態になります。

塗りつぶしをしたうえで、文字列にも色が付くようにしたいのですが
いい方法はないでしょうか?

それから、こういう場合条件付書式はどこかの列だけに指定しても1行に対応しますか?

教えてください。


 間違えたので削除しました。
                    (oni)

 ↑では失礼しました。
みず さんの条件は1読すると3つのようですが
 ・条件1  偶数行に色を付ける
 ・条件2  F列がAで始まる文字の場合フォントを赤にする
 ・条件3  F列がBで始まる文字の場合フォントを青にする
 ・条件4  条件2が偶数行の場合、塗りつぶしてフォントを赤にする
 ・条件5  条件3が偶数行の場合、塗りつぶしてフォントを青にする
 
 となり、条件が5あるように思います。
 よって条件付書式では、無理かと思います。
 Office2007にするかマクロでなら出来ると思いますが
 他の方の回答をお持ち下さい
                       (oni)

えっとですね…それでは、条件2と3を一緒にしてもかまいません。
「AかBで始まる文字列の場合はフォントを赤にする」にすれば、条件が3つに
なりますよね?

その場合の
条件2…F列がAかBで始まる文字の場合はフォントを赤にする
条件3…条件2が偶数行の場合は、塗りつぶしてフォントを赤にする
の数式がうまく作れません。
申し訳ないですが、教えてください。


 条件の順番に気をつけてください。
 条件1:偶数行でかつF列がAかBで始まる場合、フォント赤、塗りつぶし
 条件2:F列がAかBで始まる場合、フォント赤
 条件3:偶数行
 としないとだめだと思います。
 条件1の数式:=AND(OR(LEFT($F1)="A",LEFT($F1)="B"),EXACT(LEFT($F1),UPPER(LEFT($F1))),MOD(ROW(),2)=0)
 条件2の数式:=AND(OR(LEFT($F1)="A",LEFT($F1)="B"),EXACT(LEFT($F1),UPPER(LEFT($F1))))
 条件3の数式:=MOD(ROW(),2)=0
 これでどうでしょうか?
 (ROUGE)

ROUGEさんレスありがとうございます。

早速やってみましたが、セル全部が条件1の状態になってしまいました…。
うう…。


 全部条件1になっているとは?
 (ROUGE)

条件1〜3まで式を入れたのですが、セル全部が条件1の塗りつぶしで赤文字に
なってしまったのです。

 こちらでは問題なくできていますが。
 今一度手順を見直してください。
 (ROUGE)

 横から失礼します…(^_^;)

 「$F1」→「$F$1」としたりしてませんか?
 条件付書式を設定する前の範囲選択はどのようにされていますか?
 念のため一行目の範囲だけ選択→条件付書式を設定→コピー→他の範囲選択→形式を選択して貼付→書式
 で、試してみてください

 (Ohagi)

お手数をおかけしてすみません。
絶対番地は大丈夫です。それで、Ohagiさんの言われたように、再度やり直してみました。
今度は、一行おきの塗りつぶしはOKだったのですが、文字に色がつきません。
“A”から始まる文字列なので“A*”(…というか、Aというのは仮で本当は
アルファベット3文字+その他の文字列なのですが…)にしているのがマズイのでしょうか???

 まず、提示された条件での検証が先でしょう?
 σ(^-^;)が提示した方法は、"A"又は"B"から始まるものに対応しています。
 "a"又は"b"には色はつかないようにしています。
 ご自分で数式を紐解き、実際の仕様に併せて修正してみてはどうでしょうか。
 難しいのであれば、実際の仕様を詳しく知らせる必要があると思いますが。
 (ROUGE)

 ROUGEさんと衝突☆
ROUGEさんおひさデス。
いつもフォローばかりして頂いて済みませんです。
ヒントだけだから、このままのせてもいいかな?
以下そのまま
ROUGEさんの条件付書式の数式は
OR(LEFT($F1)="A",LEFT($F1)="B") → F1の文字列から最初の1文字を取り出してそれがAかB
EXACT(LEFT($F1),UPPER(LEFT($F1))) →取り出した文字列を大文字に変換したものと取り出した文字列が同じ物かどうか
という数式になっています。
なので「A*」のようにする必要はありません。
 >アルファベット3文字+その他の文字列
と言うことであれば、上記の式を「1文字取り出して」から「3文字取り出して」などと変更
する必要がありますね?
上記をヒントにお考えになっては?
                             (oni)

                         


皆さま…お手数をおかけしてすみません。
頭の中がいっぱいいっぱになってきてしまったので、しばらくたったら
もう一度考えてみます。
申し訳ないです…。

お昼ごはんを食べて、再チャレンジしてみました。
アドバイス頂いた事を参考に、
条件1:=AND(OR(LEFT($F1,3)="ABC",LEFT($F1,3)="EFG"),MOD(ROW(),2)=0)
条件2:=AND(OR(LEFT($F1,3)="ABC",LEFT($F1,3)="EFG")
条件3:=MOD(ROW(),2)=0)
にして、やってみたところ、うまくいきました。

それでですね…
お馬鹿ついでに聞いてみるのですが、LEFT関数を使用するとき1文字しか抜き出さない
場合は「,1」を省いてOKということなんです…よね?最初に教えていただいた式は
そういうことなんですよね……?

理解力が低くてほんと申し訳ないです。
またお世話になることがきっとあると思うので、よろしくお願いします。


 ソクラテスの言葉で「無知の知」という言葉があります。
 また、ことわざにも「聞くは一時の恥、知らぬは一生の恥」という言葉もあります。
 知らないことをそのまま放置するより、どんどん聞いた方が良いですよ^^
 誰もが始めは知らないのですから・・・(開発者を除く)

 > LEFT関数を使用するとき1文字しか抜き出さない
 > 場合は「,1」を省いてOKということなんです…よね?
 解釈されているとおりです。
 あと、今後のためにひとつ。
 HELPは活用されていますか?
 分かりにくい文書であることが多々ありますが、結構これで解決することもあると思います。
 (ROUGE)

コメント返信:

[ 一覧(最新更新順) ]


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