Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 11 Pro : Microsoft 365)
同じ行だけ色を付けたい
投稿日時: 24/09/25 13:46:49
投稿者: えっくん

おせわになります。
  
これまで何回か同じ文字列の行の色付けのやり方を教えていただいてますが
下記の場合のやり方を教えてください。
  
A列は順番にソートしています。途中行に同じ文字列が来ることはありません。
必ず下の行にあります。
  
下記の並びの場合の色の付け方の希望状態です。
同じ文字のセルは2個以上あり、不定です。
  
条件1
下記のように7,7,8,8のように違う文字列が続けてあった場合に4つのセルの色が同じになって
しまうと間違いをしてしまう可能性があるため、この場合は7,7と8,8の色を変えたいです。
  
条件2
3,3と7,7は色1としていますが、条件2のように交互の違う色でも構いません。
  
 
 条件1  条件2
1 色なし 色なし
2 色なし 色なし
3 色1付き 色1付き  
3 色1付き 色1付き
5 色なし 色なし
6 色なし 色なし
7 色1付き 色2付き
7 色1付き 色2付き
8 色2付き 色1付き
8 色2付き 色1付き
9 色なし 色なし
10 色なし 色なし
 
  
よろしくお願いします。
 

回答
投稿日時: 24/09/25 15:20:38
投稿者: んなっと

例えばA1:A200を選択して
 
条件付き書式 数式
=LET(a,A$1:A$200,b,UNIQUE(FILTER(a,COUNTIF(a,a)>1)),ISODD(XMATCH(A1,b)))
色1
 
条件付き書式 数式
=LET(a,A$1:A$200,b,UNIQUE(FILTER(a,COUNTIF(a,a)>1)),ISEVEN(XMATCH(A1,b)))
色2
 
※A2から始まるときは...
A2:A200を選択して
=LET(a,A$2:A$200,b,UNIQUE(FILTER(a,COUNTIF(a,a)>1)),ISODD(XMATCH(A2,b)))
=LET(a,A$2:A$200,b,UNIQUE(FILTER(a,COUNTIF(a,a)>1)),ISEVEN(XMATCH(A2,b)))

投稿日時: 24/09/25 16:29:22
投稿者: えっくん

んなっと さん
いつもありがとうございます。
 
200行では動作確認できました。
ただ、実際は行としては2000行近くあります。
この場合Excelのカーソル移動等をおこなうと途中で無反応になってしまいます。
 
条件付き書式の「重複する値、適応先=$A:$A、セル色」で重複セルの色は
つけられました(ただし条件1を満たせません)。セルの動きも滑らかです。
別の列を追加してとかこの状態から条件1の細工はできないでしょうか。
A列の重複セルの色を変えられなくても、別の列の色を変えることでも構いません。
 
よろしくお願いします。
 

回答
投稿日時: 24/09/25 17:31:13
投稿者: Suzu

引用:
ただし条件1を満たせません

=A1 & B1 の作業列 を置けば良いのでは?
 
 
どんな使い方なのか判りませんが
ソートはしてあるのですよね?
 
であれば、
同じ所を同じ色 の 発想ではなく
 
前行と 違う所 を 違う色にする の発想でも良いのではないでしょうか?
 
【Excel】同列で同じ文字が連続したときに条件付き書式を使って見やすくする方法
https://karkinos-lab.com/?p=170
 
これであれば、前行の値との比較だけで済むので
今よりは軽量な動作になる事が期待できます。

回答
投稿日時: 24/09/25 17:33:08
投稿者: んなっと

右のほうあいているところ、例えばK1に
 
K1
=LET(a,A$1:A$3000,UNIQUE(FILTER(a,COUNTIF(a,a)>1)))
としてから
 
   A    K
 1  1     3
 2  2     7
 3  3     8
 4  3
 5  5
 6  6
 7  7
 8  7
 9  8
10  8
11  9
12 10
 
A1:A3000を選択して
条件付き書式 数式
=ISEVEN(XMATCH(A1,$K$1#))
=ISODD(XMATCH(A1,$K$1#))

投稿日時: 24/09/26 13:46:23
投稿者: えっくん

Suzuさん、んなっとさん
情報ありがとうございます。
 
Suzuさんの紹介記事と、「重複する値、適応先=$A:$A、セル色」を組み合わせて
書式窓で
上側:数式を使用して、=A2=A3、プレビューを薄文字
下側;「重複する値、適応先=$A:$A、セル青色」
とすることで同じ文字列が出てくる最初の文字列のセルに色がついて、
下に続く同じ文字列の文字色が薄くなる ようにしてみました。
こうすることで以下ように5と6が続くところでも違いがわかるようになりました。
 
1 黒文字 白セル
2 黒文字 白セル
3 黒文字 青セル
3 薄文字 白セル 
4 黒文字 白セル
5 黒文字 青セル わかる
5 薄文字 白セル
6 黒文字 白セル わかる
6 薄文字 白セル
6 薄文字 白セル
7 黒文字 白セル
8 黒文字 白セル
 
 
ありがとうございました。

投稿日時: 24/09/27 08:24:34
投稿者: えっくん

解決済みを忘れていました。