Excel ワークシートに、行が一般的に 1 つの列の値でグループ化 (おそらく並べ替え) されているテーブルがあります。以下の例では、列が A
Year で並べ替えられています。ただし、必ずしも数値である必要はなく、並べ替えられている必要もありません。"Apple"、"Apple"、"Apple"、"Pear"、"Banana"、"Banana" などです。
指定した列の値が変わったときに、行の塗りつぶしの色を変更したいと思います。例:
あ | B | C | ||
---|---|---|---|---|
1 | 年 | 名前 | 額 | |
2 | 1999 | フレッド | 1,000 | (この行はオレンジ色になります) |
3 | 1999 | アリス | 1,200 | (この行はオレンジ色になります) |
4 | 1999 | ボブ | 100 | (この行はオレンジ色になります) |
5 | 2000 | キャロル | 250 | (この行は緑色になります) |
6 | 2001 | デビッド | 450 | (この行はオレンジ色になります) |
7 | 2001 | エド | 600 | (この行はオレンジ色になります) |
8 | 2002 | ジョー | 700 | (この行は緑色になります) |
したがって、年列に 1999 がある行の塗りつぶしは、オレンジ色など 1 色で、値が変わると塗りつぶしの色も変わります。オレンジ色、緑色、オレンジ色など、色が交互に変わるだけでも問題ありません。私が興味を持っているのは、列が年や数字であるかどうかではなく、車のメーカーや果物などであるかどうかに依存する一般的な方法です。また、何行も下に 1999 年という別の年がある場合、塗りつぶしの色を 1 にする必要はなく、隣接する 1999 年以外の行と異なる色にすればよいだけです。
条件付き書式をいくつかのことに使用しましたが、これを実行できません。目的は、年が変わるときにわかりやすくすることです。これは、単に塗りつぶしを交互にするのとは異なります。
答え1
ヘルパー列を使用する場合は、VBAを使用する必要はありません。列を使用しましょう H
。1に設定しH2
、次にH3
に設定します。
=IF(A2=A3, H2, 3-H2)
ドラッグして下に塗りつぶします。これにより、 列の値が変わるたびに 1
、とが 交互に表示されます。2
A
- この行の列の値が
A
前の行 (IF A2=A3
) と同じ場合は、ヘルパー列に前の行 (H2
) と同じ値を使用します。 - それ以外の場合は、値を切り替えます
3-H2
。 がH2
の 場合1
、これは3-1
が である と評価されます2
。H2
が の 場合2
、これは3-2
が である と評価されます1
。
次に、列の値を確認するために条件付き書式を設定します H
。