1

慈善団体のボランティアを追跡する 2010 Access データベースがあります。VOLUNTEER テーブルの列の 1 つは AVAILABILITY と呼ばれ、可能な値は「季節」と「年中」です。

すべてのボランティア情報を一覧表示するレポートを作成しました。このレポートには、このコラムが含まれています。私が抱えている唯一の問題は、レポートの値を省略したいということです。レポートのスペースを節約するために、季節には「S」、通年には「YR」が理想的です。これは可能ですか?

4

2 に答える 2

2

はい、もちろん。クエリでそれを実行し、それに基づいてレポートを作成するか、レポート自体で行うことができます。

 SELECT IIF([AVAILABILITY] = "Seasonal","S","Yr") As Avail 
 FROM MyTable

レポートにコントロールを設定する場合は、その名前を Availability 以外の名前に変更してください (txtAvailability など)。

 = IIF([AVAILABILITY] = "Seasonal","S","Yr")
于 2012-12-20T10:58:09.933 に答える
2

IIF 関数を使用することもできますが、これでは 2 つの可用性オプションしか使用できません。将来的にさらに多くのことを可能にするために、レポートに表示される略語を検索するための 2 つ目のテーブルを作成します。

これをコピーして Access の SQL エディターに貼り付け、このようなテーブルを作成します。

SELECT "Seasonal" AS Availability, "S" AS Abbreviation INTO tblAvailabilityOptions;

次に、レポートのベースとなるクエリを作成します。これは、メイン テーブルと作成したばかりの新しいテーブルを結合し、[可用性] 列で結合します。

SELECT tblMain.ID, tblMain.Volunteer, tblMain.Availability, tblAvailabilityOptions.Abbreviation
FROM tblMain INNER JOIN tblAvailabilityOptions ON tblMain.Availability = tblAvailabilityOptions.Availability;

メイン テーブルでコンボボックス ルックアップ機能を使用する方法を知っていれば、これはさらに簡単になります。

于 2012-12-20T12:16:40.423 に答える