アプリ版:「スタンプのみでお礼する」機能のリリースについて

ずぶの素人で、一からデータベースを作らねばならず、職場にわかる人間もいず、参考書とグーグルを駆使しながらコピペ、改変で頑張って作っています。

質問はテキストボックス内の式ビルダです。
請求日を管理していて、直近の請求日と、その一つ前の請求日をフォームに表示させたいと思っています。
顧客はIDにて管理していて、請求日テーブルに顧客ID、請求日の2つのフィールドを作り、どんどん追加していく仕組みにしています。
フォーム上に表示されているIDを条件にテーブルから抽出しています。

直近の請求日を抽出する式
=DMax("請求日","T請求日","id=" & [ID])

二番目の請求日を抽出する式
=DMax("請求日","T請求日","請求日 < #" & DMax("請求日","T請求日","id=" & [ID]) & "# and id=" & [ID])

こちらをフォーム上のテキストボックスの式にそれぞれ入れています
ここで、全く請求していない顧客の場合、直近の請求日は空白となるのですが、二番目の請求日に#errorが出てしまいます。
検索してもiifとisnullを使った回避策しか出てこなく、これを式に組み入れも解決しませんでした。
もともとの式もネット上にあったソースを改変し作っていますので、間違っているかもしれません。
今のところ、請求日が入っている顧客に関しては問題なく表示しています。
何卒ご指導お願い致します。

A 回答 (1件)

二番目の請求日を抽出する式


=IIf(DCount("請求日","T請求日","id=" & [ID])>0,DMax("請求日","T請求日","請求日 < #" & DMax("請求日","T請求日","id=" & [ID]) & "# and id=" & [ID]))

あるいは

=IIf(Not IsNull(DLookUp("請求日","T請求日","id=" & [ID])),DMax("請求日","T請求日","請求日 < #" & DMax("請求日","T請求日","id=" & [ID]) & "# and id=" & [ID]))

とか。
    • good
    • 0
この回答へのお礼

出来ました!ありがとうございます
自分では絶対解決しなかったので助かりました
access、大変ですが面白くもあるのでもっと勉強したいと思います

お礼日時:2013/03/05 12:42

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!