スプレットシートは便利ですね。条件付き書式設定の書式ルール、カスタム数式の基本的な使い方の覚書です。
任意のセルを右クリックして「条件付き書式」を選択します。
条件付き書式のその条件を満たしたときにその設定を適用する範囲を指定します。フィールドから個別に適用範囲を指定することもできますが、スプレットシート独特の書式で指定することもできます。例えばその行をすべて指定するときは1行目の場合1:1
と指定します。列を指定する場合はA:A
と指定します。一つのセルのみを指定する際は、A1のように指定します。セルの一部を指定するときは行行の場合はA1:J1
、列の場合はA1:A32
のように指定できます。
セルの書式設定の条件でカスタム数式を選びます。カスタム数式ではそのセルがxxxだったら上記の範囲適用の範囲にoooを反映するというものになります。形式は、
=$[任意のセル]=[値]
となります。例えばB2セルの値が10である場合は=$B2=10
と指定します。
書式設定のスタイルで適用するスタイルを選びます。この指定が先の範囲指定で設定した範囲に指定されます。
例えば列に「済」と入っていたら行をグレーアウトするというような機能を考えてみます。
範囲はすべてを選択します。すべての範囲を指定するときは、スプレットシートの左上の角をクリックします。展開中のスプレットシートのすべての範囲が指定されます。デフォルトではA1:Z1000
というような表記になると思います。手動で文字入力してもOKです。それからB列に「済」が入力された場合を考えると書式ルールに=$B1="済"
とします。文字列の一致は"ダブルクォートを使いいます。最後に行に適用させるスタイルを選択します。
ちょっと直感的によくわからないのが、全体を適用範囲に指定するとそのセルで条件が成立すると行に適用されるというルールです。ごく頻繁に使う機能なのでもうわからなくなることはないですが、最初はピンと来ない設定手順ですね。
土曜・日曜を色分けしたカレンダーの作成をしてみます。カスタム数式にWEEKDDAY()関数を使います。この部分の設定にはスプレットシートの関数を使うことができます。WEEKDDAY()の書式は以下です。
WEEKDDAY("[日付]",[種類])
日付は2021-06-20
というような形式でOKです。ここでは日付を曜日表示する設定にしいているので、設定されている値は日付になります。日付を曜日表示にする方法は、YYYY-MM-DD
という形式で入力したセルに対してメニューの[表示形式]->[ 数字]->[ 表示形式の詳細設定]->[カスタム数値設定]でddd
を設定します。ddd
は月・火といった省略型、dddd
は月曜日・火曜日といった形式で表示します。
さて[種類]ですが、以下のようになります。特別理由がない限り1を選択しておいて問題ありません。
種類(1から3の数字設定)にしたがって、WEEKDDAY()関数の設定をします。手短にいうと日曜日は、
=WEEKDAY($C1,1)=1
土曜日は、
=WEEKDAY($C1,1)=7
で設定すればOKです。WEEEKDAY()関数は日付けを見て日曜なら1を返し、土曜なら7を返すのでこういう設定になります。日曜:1,月曜:2,火曜:3,水曜:4,木曜:5,金曜:6,土曜:7という感じになってます。
祝日も色分けすることができますが、祝日は変動するので自分で定義した値をもたなくてはなりません。同シートで祝日のデータを作成しておきます。(条件付き書式で別タブまたは別シートの情報を参照することができません。)
祝日はググッて自分でリストを作成しておきます。
シートに設定した祝日の日付を範囲にして、以下のように設定しておくと祝日にもスタイルが適用されます。
=COUNTIF($A$1002:$A$1018, $C1)=1