• ベストアンサー

Accessで経過日数を求める関数を教えていただけないでしょうか。

アクセスで経過日数を求めたいのですが、次のような場合はどのような式を組めばよいのでしょうか? フィールド: 請求日 支払日 支払確認日 新たに設ける関数式フィールド:経過日数 請求日から20日過ぎて、なおかつ支払確定日が空白のレコードを「経過日数」フィールドに経過日数の数値で返したい。 どなたかおわかりになる方がいらっしゃいましたら、教えていただけないでしょうか。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • kosamon
  • ベストアンサー率47% (11/23)
回答No.1

datediff と iif について調べてみましょう。 この2つの関数の組み合わせることによりご所望の結果を得ることができます。 >請求日から20日過ぎて 特に記載がないので「今日」を基準とします。 iif(datediff("d",[請求日],date())>=20 and [支払確認日]="",detediff("d",[請求日],date()),"") だいたいこんな感じかな? 但し、データ型について何も記載がないため一般的なものとして提示しました。 データ型が異なる場合にはとのつど質問者様の環境に合わせて書き換えてください。

375k
質問者

お礼

ご回答ありがとうございます。 教えていただいた構文を入れてみたのですが、うまくいきませんでした。 データ型とかが違うのかもしれません。 そのあたりもよくわかってないので、アドバイスをいただいた関数について学習してみます。

その他の回答 (1)

noname#79209
noname#79209
回答No.2

> 教えていただいた構文を入れてみたのですが、うまくいきませんでした。 #1さんが言われるように、 > データ型について何も記載がないため一般的なものとして提示しました。 Accessですから、多分[支払確認日]フィールドは日付タイプでしょう。 もし、日付型なら、 and [支払確認日]="" では、引っかかりません。 and [支払確認日]=Null で試してみて下さい。

375k
質問者

お礼

お礼の言葉が遅くなって申し訳ありません。 アドバイスをいただきましたことを感謝しております。

関連するQ&A