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


クラス分け一覧表レポートで性別によって敬称を変える : Access裏技Tips



氏名を列記したリストでは、男女別に異なる敬称をつける必要もでてきます。 ここでは、性別データをもとに氏名データと敬称を組み合わせる技を解説します。

性別によって敬称を使い分ける

  1. サンプルテーブル(tbl_sample)をもとにして、帳票レポートを作成します。
  2. 「性別」フィールドの男、女の区分で、レポートの「お名前」テキストボックスに表示させる氏名の敬称を変えます。
  3. 性別と氏名を引数に持つFunctionプロシージャを作成し、レコードソースであるクエリーの新規フィールドに記述します。

「クラス分け一覧表」レポート(rpt_sample)の作成

サンプルテーブル(tbl_sample)をもとに、「クラス分け一覧表」レポートを作成します。

  1. 性別データを持つテーブルフィールドが必要です。

Functionプロシージャ HonorificTitleの作成

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

Function HonorificTitle(varname As Variant, varsex As Variant) ' --- A
        
    If varsex = "男" Then ' --- B
        HonorificTitle = varname & " くん"
    Else
        HonorificTitle = varname & " ちゃん"
    End If
            
End Function
解説
  1. 引数をバリアント型で定義します。これら引数は、クエリーフィールドと連携し値をプロシージャ内に返します。
  2. 引数varsexの値によって男なら"くん"、それ以外なら"ちゃん"を返します。
今回のおすすめポイント

文字列の連結

VBA内で文字列を連結させるには、&(アンバサダ)記号を用います。

選択クエリの作成

レポートのレコードソースに、テーブル(tbl_sample)を基にしたクエリーを作成します。

  1. Functionプロシージャ(SamplePro)を新規のクエリーフィールドに記述します。
  2. 氏名」フィールドと「性別」フィールドを引数に配置します。

今回のおすすめポイント

クエリフィールド内の引数

引数にクエリーフィールドを用いる場合は、フィールド名を「」で囲みます。クエリフィールドにFunctionプロシージャを記述すると、1レコードごとにプロシージャが実行されます。

動作確認

  1. レポートをデザインビューから印刷プレビューに切り替えます。

今回のおすすめポイント

Switch関数

独自のFunctionプロシージャ(HonorificTitle)に代えて、Accessの組み込み関数である Switch関数 を利用することもできます。

関連ページ

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

 


クラス分け一覧表レポートで性別によって敬称を変える : Access裏技Tips


 

-Microsoft Access Club-

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