|
お世話になっています。
恥ずかしながら、もう壁にぶつかってしまいました。
現在は、
以前に教えて頂いたDLookUp関数を使うことにして
以下のSQLを利用しています。
SELECT テーブルI.日付,
テーブルI.名前,
テーブルI.結果1,
テーブルI.結果2,
DateAdd("yyyy",-1,[日付]) AS 前年度日付,
DLookUp("結果1","テーブルI","Year([日付]) = " &
Year([日付])-1 & "AND 名前 = '" & [名前] & "'") AS 前年結果1,
DLookUp("結果2","テーブルI","Year([日付]) = " &
Year([日付])-1 & "AND 名前 = '" & [名前] & "'") AS 前年結果2
FROM テーブルI;
そこで1つ問題が発生しました。
上記を利用すると例えばうるう年を含めた前後の年度、
つまり2月29日が存在する年度では前年結果が非表示ではなく、
前年の2月28日の結果が表示されてしまいます。
例)2003年2月28日
2004年2月29日 → 未記入ではなく2003年2月28日の結果が表示
どうやったら未記入にできるのでしょうか?
ちなみにデータが無い年度に関しては未記入になります。
自分では、IIfを使うのか?Nullチェックか?それともYearじゃないのか?
とも考えてみたのですが上手くいきません。
上手く解決する方法はありますでしょうか。
度々ですが宜しくお願いします。
|
|