Microsoft Access Club >Access裏技Tips >このページ >次頁 < 前項 サイト内検索


各オブジェクトの背景色を一括で変更する : Access裏技Tips



時と場合によっては、数多くのフォーム、レポートの背景色を変更しなくてはいけないこともあります。 ここでは、テーブルデータを利用して全てのオブジェクトの背景色を一括変換する技を紹介します。

背景色を一括変換する

  1. ID、背景色、コメントフィールドを持つ背景色設定テーブル(tbl_sample)を作成します。
  2. FunctionプロシージャBackColorChangeを作成します。
  3. サンプルテーブルにもとに背景色設定の一覧フォームを作成し、フォームを開く時イベントでBackColorChangeプロシージャを呼び出します。
  4. 背景色を変更する時は、BackColorChangeプロシージャの定数を変更します。

tbl_sampleテーブルの作成

  1. tbl_sampleテーブルを作成します。
  2. ID(オートナンバー型)、背景色(テキスト型)、コメント(テキスト型)フィールドを作成します。
  3. 背景色ナンバー、コメントを適時入力します。

FunctionプロシージャBackColorChangeの作成

FunctionプロシージャBackColorChangeを作成します。

Function BackColorChange()

    Const Color定数 = 3 ' --- A
    Dim strColor As String
    
    strColor = DLookup("背景色", "tbl_sample", "[ID]=" & Color定数) ' --- B
    BackColorChange = strColor

End Function
解説
  1. ConstステートメントでColor定数を宣言します。
  2. DLookup関数で定数Color定数に対応するtbl_sampleテーブルの「背景色」フィールドから値を求めます。
今回のおすすめポイント

DLookup関数

プロシージャ内にテーブルフィールドの各値を返します。 抽出条件の設定を行うことができますが、該当データがない場合は長さ0の文字列("")を返します。

背景色設定の一覧フォームの作成

  1. 背景色設定の一覧フォームを作成します。
  2. レコードソースには、tbl_sampleテーブルを指定します。

フォームを開く時イベントプロシージャの作成

フォームを開く時イベントプロシージャを作成します。

Private Sub Form_Open(Cancel As Integer)

    Dim OpenBackColor As Single ' --- A
    OpenBackColor = BackColorChange ' --- B
    
    Me.フォームヘッダー.BackColor = OpenBackColor ' --- C
    Me.詳細.BackColor = OpenBackColor ' --- D

End Sub
解説
  1. 変数OpenBackColorを単精度浮動小数点数型として定義します。
  2. 変数OpenBackColorにFunctionプロシージャBackColorChangeの値(サンプルでは3になります)を代入します。
  3. フォームヘッダーセクションのBackColorプロパティに変数の値を代入します。
  4. フォーム詳細セクションのBackColorプロパティに変数の値を代入します。
今回のおすすめポイント

単精度浮動小数点数型

単精度浮動小数点数型(Single)は、負の値を扱うことができます。今回の色コードには、既定色(-2147483633)が存在するためです。

動作確認

  1. デザインビューからフォームビューに切り替えます。

  1. Color定数の値が 3 であるため、フォームの背景色は淡いブルー色(16380136)になります。

関連ページ

ページの先頭へ 前ページへ戻る

 


各オブジェクトの背景色を一括で変更する : Access裏技Tips


 

-Microsoft Access Club-

cPanel と PLESKをインストールした専用・共有レンタルサーバーを銀行振込でご提供中。契約書は一切不要です。
cPanel や PLESKをインストールした専用・共有レンタルサーバー
まずは1ヶ月から...。
日本国内の銀行振込がOK、契約書は不要です。