Googleスプレッドシートで、特定の条件に基づいて複数の列に条件付き書式を一括適用したい場合、範囲の指定方法やカスタム数式の使い方に工夫が必要です。この記事では、複数の列に条件付き書式を適用する方法について、実際の数式を交えて解説します。
複数の列に条件付き書式を適用する基本的な考え方
Googleスプレッドシートでは、条件付き書式を複数の列に一度に適用するためには、範囲を適切に設定し、条件に合った数式を作成する必要があります。例えば、B5:B999だけでなく、C5:C999やD5:D999など、複数の列にまたがる範囲を対象にしたい場合、範囲を一つずつ指定する方法ではなく、共通の条件で範囲を広げる必要があります。
通常、条件付き書式では、数式を用いてセルの値に基づいて色付けを行いますが、複数の列を一度に操作したい場合には、数式の範囲指定や「ARRAYFORMULA」を活用すると便利です。
AND関数を利用した条件付き書式の範囲指定
まず、条件付き書式の数式を、複数列にまたがる範囲に対応させる方法について説明します。質問のように、B列のセルに基づいて書式を変更し、さらにその条件をC列、D列、AB列にまで適用したい場合、次のような数式にすることができます。
例えば、元の数式「=and(B5=maxifs(B$5:B$999,arrayformula(year(B$5:B$999)),year(B5)),countif(B5:B$999,B5)=1)」を、複数列に適用する場合、次のように書き換えます。
=and(B5:maxifs(B$5:B$999,arrayformula(year(B$5:B$999)),year(B5)),countif(B5:B$999,B5)=1)
ARRAYFORMULAを使って範囲を一括指定する方法
範囲を一括で指定するために、「ARRAYFORMULA」を活用する方法もあります。これを利用することで、複数の列にまたがる範囲に対して、一つの数式で条件付き書式を適用することができます。例えば、以下のように書き換えることができます。
=ARRAYFORMULA(and(B5:B999=maxifs(B$5:B$999,arrayformula(year(B$5:B$999)),year(B5:B999)),countif(B5:B$999,B5:B999)=1))
この数式では、B列からAB列までのすべての列に対して条件付き書式を適用することができます。
複数列への条件付き書式の適用例
実際にこの方法を使って、次のように数式を変更してみましょう。
=ARRAYFORMULA(and(B5:AB999=maxifs(B$5:B$999,arrayformula(year(B$5:B$999)),year(B5:AB999)),countif(B5:AB999,B5:AB999)=1))
このように指定することで、B列からAB列にまたがる範囲に対して、同じ条件付き書式を一度に適用することができます。
まとめ
Googleスプレッドシートで複数の列に条件付き書式を一括適用するには、範囲を適切に指定するために「ARRAYFORMULA」や「AND」関数を活用することが重要です。これにより、数式一つで、指定した範囲全体に条件付き書式を適用することが可能になります。条件をうまく設定して、スプレッドシートの見やすさや使いやすさを向上させましょう。


コメント