MS Access 2007
を使用しています。[tblDonors]
というテーブルの子レコードにリンクされた というテーブルがあります[tblReceipts]
。
新しい Boolean(y/n) フィールドの値を設定しようとしています[tblDonors].[blInactive]
。のすべてのレコードを調べて、最新の領収書 year( ) が year( よりも古い場合にフィールドを[tblDonors]
設定するスクリプトを実行したいと思います。これ
が私のクエリです。[blInactive]
"True"
[tblReceipts].[Date]
now())-2
SELECT tblDonors.ID, Year([tblReceipts].[Date]) AS [Year], tblDonors.Active
FROM tblDonors
LEFT JOIN tblReceipts ON tblDonors.ID = tblReceipts.ID
WHERE (((Year([tblReceipts].[Date]) )>=Year(Now())-2))
ORDER BY Donors.ID;
寄付者が過去 2 年間に 2 回以上寄付した場合、このクエリは親レコードを複数回表示します。これにより、レポートに重複したレコードが作成されます。このクエリの各レコードを調べてusingに設定する
にはどうすればよいですか? 以下は、私が達成しようとしていることの要点を示すのに役立ちます。tblDonors.Active
TRUE
VBA
Function fnActivity() 'locates active donors
For each record in recordset 'Go through each record in the query...
record.[Active].Value = True '...and flag as active member.
Next record
End Function