一列の中を条件によって3色に色分けする方法を教えてください。
以下の条件で色分けをしたいと思っています。
======
1、空白のセルは無色(なにもしない)
2、文字の入っているセル 及び それに続く↓の入っているセルは同じ色
3、特定の文字 及び それに続く↓のセルは同じ色で条件2とは違う色
======
条件付書式の設定で、
*文字の入っているセルに色をつける、空白のセルには色をつけない
⇒条件1と2はクリア
*特定の文字が入っているセルに条件2とは別の色をつける
⇒条件3の半分はクリア
まではできたのですが、”特定の文字に続く↓のセルに特定文字と同じ色をつける”方法が
わかりません。
・特定の文字以外は全くのランダムな文字になります
・文字に続く↓のセル数は時々でバラバラです
VBAはスキルがなくわかりません。
条件付書式でこのような設定は可能でしょうか。
完成は添付のイメージです。
宜しくお願いします。
No.7ベストアンサー
- 回答日時:
解決しないようですね。
他に回答も出ていますが、「特定の文字」で、どの回答もうまくいかないように思います。
繰り返しになり恐縮ですが、この規則を固持するのであれば、やはり作業列を使わないと出来ないと思います。どんなアプリにも出来る事の限界がありますので。
右の見えない部分を作業列にして非表示にするか、もしくはこの際マクロにするか、どちらかしかないのでは。
マクロであれば表に何かを書き込むのではないので「万一壊れる」と言った心配はしなくていいと思います。
No.8
- 回答日時:
シンプルに考えましょう。
まず↓の元の色は何個も上かもですが、↓の一つ上は必ず同じ色です。
なので、行数のところをROW()-1でにするという考え方です。
じゃあ色の取得はどうすんの?という部分ですが、
ここは素直にもう1列、C列を追加しましょう。
んで、C2には=IF(B2="↓",B1,B2)を入力して、あとは下に全部コピーしておきましょう。
※関数が一つ上のセルが存在することが前提なのでC1だけは空で。
こうすると、たとえばC3からC5がが全て"ア"になりますよね?
あとはこれまでの条件付き書式のみで、参照先だけをC列に移動してあげれば
期待通りの結果が得られると思います。
No.6
- 回答日時:
>数式を入れてみたのですが、どうしても“A”に続く↓に赤色をつけることができませんでした。
XL2003では、条件1が成立すると条件2、3は判定しません。
XL2007以降は、そのチェックがあったはずなので確認してください
また、条件付き書式を設定するとき、必ずB1セルから選択して、B1セルがアクティブセルとなっていることを確認してください
=LOOKUP("ーー",IF(B$1:$B1<>"↓",B$1:B1))="A"
の部分をC1セルに入れて、[Ctrl]+[Shft] +[Enter] で確定、配列数式。{ }で挟まれる
下へオートフィルし、どのような結果が得られるかを
確認しておくと動きも分かりやすいかと思います
No.5
- 回答日時:
xl2003なので操作が違うかとは思いますが、
B1セルから下へ範囲選択して [Alt]+[O] → [D]条件付き書式
条件(1) セルの値が 次の値に等しい =""
書式設定なし
条件(2) 数式が =LOOKUP("ーー",IF(B$1:$B1<>"↓",B$1:B1))="A"
書式 赤
条件(3) セルの値が 次の値に等しくない ="A"
書式 青
ただし、範囲が広いと計算速度が遅くなる可能性があります。
ご回答ありがとうございます。
数式を入れてみたのですが、どうしても“A”に続く↓に赤色をつけることができませんでした。
“A”が常にトップにあるわけではないのですが、そこが原因でしょうか。
No.4
- 回答日時:
=AND(LOOKUP(1,0/(SUBSTITUTE(B$1:B1,"↓","")<>""),B$1:B1)="A",B1<>"")
とすればいい気がしますけど B列が手入力なら
=AND(RIGHT(SUBSTITUTE(PHONETIC(B$1:B1),"↓",""))="A",B1<>"")
でもいいかと思います。 Excel2016なら PHONETICの代わりに CONCAT関数
を使えば 数式の結果だったとしても問題ありません。
ご回答ありがとうございました。
教えて頂いた数式を当てはめてみたのですが、うまくいきませんでした。
私の表の記入方法が悪かったのですが、“A”が常にトップにあるわけではないので、そこが原因でしょうか。
今回は他の方法でやってみようと思います。
No.3
- 回答日時:
作業列を使わなくてはできないのであれば、ママチャリ様の作業列式の方が、その後の設定数式が簡単になりますね。
一応、修正してみたものを書いておきます。
C1 は =B1
C2 =IF(B2="","",IF(B2<>"↓",B2,C1)) 下へコピー
条件付き書式設定は2個だけになります。
=COUNTIF($D$1:$D$3,C1) ピンク
=AND(B1<>"",COUNTIF($D$1:$D$3,C1)=0) ブルー
どうしても作業列NGならマクロになるかと。
マクロでもいいならコード書きますが。
jmuinyさん、早速のご回答、ありがとうございます。
作業列の使用という方法は“なるほど”と思いました。
ただ、今回に関しては作業列の使用は難しい状況です。
マクロは知識が全くないので、使用する自信がありません。
今回の表は頻繁に更新するもので、なおかつ更新者も限定されていないので、万が一、崩れてしまった時に対応ができないと思うので・・・
次回以降の参考にさせていただきます。
ありがとうございました。
No.1
- 回答日時:
作業列を使わないと難しいと思います。
急ぎとの事なので、一応回答します。他の回答がなければ参考にして下さい。
特定の文字というのはD1~D3に入っているとします。
C列を作業列にします。
C2
=IF(B2<>"↓","",IF(OR(C1=1,COUNTIF($D$1:$D$3,B1)),1,2))
下へコピー
条件付き書式は4つです。いずれも数式
範囲B1~下
=COUNTIF($D$1:$D$3,B1) ピンク
=AND(B1<>"",B1<>"↓",COUNTIF($D$1:$D$3,B1)=0) ブルー
範囲B2~下
=AND(B2="↓",C2=1) ピンク
=AND(B2="↓",C2=2) ブルー
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelの警告について
-
タイムスタンプとテキストから...
-
シートの情報を別のシートへま...
-
マクロの処理が遅くなった
-
Excelでの文字色
-
ワークシートに出現したこの画...
-
EXCELの散布図で日付が1900年に...
-
OFFSET関数を使用したいのです...
-
エクセルでファイルの最終更新...
-
エクセルの文字が途中から消える
-
エクセルデーターから必要な項...
-
Excel 大小比較演算子による「...
-
SUBTOTALは、参照された数字で...
-
エクセルの数式バーのフォント...
-
エクセルの「条件付き書式」を...
-
Excelについて教えてください。...
-
エクセルVBA 月の中で、月~土...
-
Excelの数字の前に入っている空...
-
Excelの関数について このよう...
-
セルの数を求めたい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelの警告について
-
Excelで数値を時間数に変換する...
-
エクセルの数式バーのフォント...
-
エクセルで数字の組み合わせを...
-
エクセルを使用して、円周率を...
-
Excelで特定の文字列が含まれて...
-
Excel 対象のセルに入力が無い...
-
任意の値が存在する行に名前を...
-
エクセルでファイルの最終更新...
-
index関数の説明をお願いします。
-
条件付き書式でやりたいのですが
-
重複しない値を取り出したい
-
【ExcelVBA】UTF-8(BOM無)でC...
-
【マクロ】マクロが割当てされ...
-
エクセル IF計算式?でしょうか?
-
エクセルで曜日を入れたい
-
表中の指定した条件の文字列を...
-
【Excel】版が同じ事を示す番号...
-
EXCELの散布図で日付が1900年に...
-
Excelについて。Excelに縦1列に...
おすすめ情報