条件付き書式

 フォームおよびレポートでは、コントロールの値などに応じてレコードごとにコントロールの書式(フォント、背景色など)を変えることができ、この機能を条件付き書式といいます。
 なお、条件付き書式を設定できるコントロールはテキストボックスとコンボボックスの2種類です。

設定例

コントロールの値に応じて書式を変える

f:id:accs2014:20190121164323p:plain:right:w350

 はじめに、コントロールが記録している値により書式を変える例を見てみます。
 画像はサンプルとなるフォームで、各都道府県の名称と人口(2010年及び2015年)が表示されています。
 ここで次のように設定をするものとします。

  • 「人口2010」の値が500万以上である場合に、その背景色を赤色にする

f:id:accs2014:20190121164320p:plain:right:w500

 「人口2010」のテキストボックスを選んだ状態で、書式タブから「条件付き書式」をクリックします。

f:id:accs2014:20190121164315p:plain:right:w500

 「条件付き書式ルールの管理」というダイアログが現れます。
 何も設定されていない状態ですので、まずは「新しいルール」をクリックします。

f:id:accs2014:20190121164311p:plain:right:w500

 すると「新しい書式ルール」というダイアログが現れます。
 

f:id:accs2014:20190121164307p:plain:right:w500

 下側の左から2番目の欄で「次の値以上」を選択します。

f:id:accs2014:20190121164410p:plain:right:w500

 そして右側の欄に「5000000」と入力します。
 さらにバケツのアイコン(背景色設定)をクリックし、色は赤色を選択します。

f:id:accs2014:20190121164407p:plain:right:w500

 プレビュー(「AaBbCcYyZz」という部分)が赤色になっていることを確認して「OK」に進みます。

f:id:accs2014:20190121164404p:plain:right:w500

 先ほどの「条件付き書式ルールの管理」というダイアログに戻りました。
 ここでも「OK」とし、設定を終了します。

f:id:accs2014:20190121164402p:plain:right:w350

 フォームビューです。
 ちょっとどぎつい色になりましたが、値が500万以上のテキストボックスが赤くなっています。

複数の条件付き書式の設定

 さて、同じコントロールに対して条件付き書式を複数設定することができます。
 そこで上記の設定に引き続き、次のように設定をするものとします。

  • 「人口2010」の値が200万以上である場合に、その背景色をオレンジ色にする

f:id:accs2014:20190121164359p:plain:right:w500

 再度「人口2010」を選択した状態で「条件付き書式」メニューをクリックし、「条件付き書式ルールの管理」ダイアログから「新しいメニュー」選択します。
 その先の画像は省略しますが、上記(5つ上の画像)と同じ要領で「次の値以上」「2000000」と入力して背景色はオレンジ色を選択し、「OK」として「条件付き書式ルールの管理」ダイアログに戻ります。

f:id:accs2014:20190121164458p:plain:right:w500

 さて、画像は「条件付き書式ルールの管理」ダイアログに戻ったところです。条件が2つ設定されているのが分かります。
 コントロールが複数の条件を満たす場合、上位の条件が優先されます。よってこの設定では人口が「500万以上」であれば背景色が赤色に、人口が「200万以上500万未満」であればオレンジ色になります。

f:id:accs2014:20190121164455p:plain:right:w350

 フォームビューの様子です。
 人口200万人以上500万人未満の場合、確かに背景色がオレンジ色となっています。

f:id:accs2014:20190121164453p:plain:right:w350

 ついでに「人口2015」列にも同じように設定をした様子です。

条件式に基づき書式を変える(他のコントロールとの比較)

 条件付き書式では、式の真偽により条件を設定することができます。
 代表的な例は、あるコントロールと他のコントロールの値を比較して書式を設定するというものです。
 ここでは上記と同じフォームを例として、次のように設定をするものとします。

  • 「人口2015」の値が「人口2010」の値より大きい場合に、「人口2015」の背景色を太字にする

f:id:accs2014:20190121164450p:plain:right:w500

 「人口2015」のテキストボックスを選んだ状態で、書式タブから「条件付き書式」をクリックし「条件付き書式ルールの管理」ダイアログから「新しいメニュー」を選択して「新しい書式ルール」ダイアログに進んだところです。
 ここで、左の欄から「式」を選択します。

f:id:accs2014:20190121164448p:plain:right:w500

 そして右側の欄に「[人口2010]<[人口2015]」という式を入力します。
 さらにBの字のマーク(太字の設定)をクリックしてOKに進み設定完了です。

f:id:accs2014:20190121164553p:plain:right:w350

 フォームビューです。
 「人口2015」の値が「人口2010」より大きい場合のみ、太字になっています。

フォーカスのあるコントロールの書式を変える

 コントロールの値などに関係なく、「フォーカスのあるコントロール」の書式を変えることもできます(書式が変わるのは当該レコードのみ)。つまり操作中のコントロールを目立たせることができます。

f:id:accs2014:20190121164550p:plain:right:w500

 ここでは「都道府県コード」にフォーカスがあるときに書式を変えるものとします。「都道府県コード」を選んだ状態で「条件付き書式」メニューを選択し「新しい書式ルール」ダイアログに進んだところです。
 ここで左側の欄から「フォーカスのあるフィールド」を選択します。

f:id:accs2014:20190121164546p:plain:right:w500

 条件設定はこれだけで終了ですので、次に書式を設定します。
 次にバケツマークを選んで黄色を選んでみます。

f:id:accs2014:20190121164543p:plain:right:w500

 簡単ですが以上で設定完了ですので「OK」に進みます。
 これでフォーカスのあるコントロールの背景色が黄色くなります。

f:id:accs2014:20190121164538p:plain:right:w350

 フォームビューで都道府県コードをクリックしてフォーカスを当てると、そのレコードのみ都道府県コードの背景色が変わりました。

f:id:accs2014:20190121164610p:plain:right:w350

 ただし、同じ詳細セクションにある他のテキストボックス(都道府県名)を選んでも書式は変わりません。
 この方法ですべてのコントロールに同じ設定をしても、書式が変わるコントロールは1つだけです(フォーカスのあるコントロールだけ)。どう設定しても複数のコントロールを同時に目立たせることはできません。

 なお、フォーカスのある詳細セクションを全体的に目立たせる例として、次のような方法もあります。ただしなかなか面倒です。

www.accessdbstudy.net