• ベストアンサー
  • 困ってます

microsoft Accessの使い方

  • 質問No.9626100
  • 閲覧数93
  • ありがとう数2
  • 気になる数1
  • 回答数2
  • コメント数0

お礼率 66% (2/3)

下記のようなクエリデータがあり、Iffにてデータごとに判定を入れたいです。

日付1 日付2 日付3 判定

・日付2と3が空白の場合、判定=空白
・日付2と3に両方日付が入っている場合、判定=A
・日付2は日付が入っているが、日付3が空白の場合
 日付1が未来日の場合、判定B
 日付1が過去日の場合、判定C

上記のような判定はできますでしょうか?
どなたか教えてください。よろしくお願いいたします。
 

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

  • 回答No.1
  • ベストアンサー

ベストアンサー率 75% (678/900)

「判定」というフィールドはクエリで設定したものとします。
したがって、クエリのデザインビューで新しいフィールドに以下を貼り付けます。
なお、質問のいずれの場合にもあてはまらない場合は判定を"D"としています・
たとえば、

・日付2は日付が入っているが、日付3が空白の場合
 日付1が今日の場合

などです。

判定:IIf(IsNull([日付2]) AND IsNull([日付3]),"",IIf(not IsNull([日付2]) AND not IsNull([日付3]),"A",IIf(not IsNull([日付2]) AND IsNull([日付3]) AND Date() < [日付1],"B",IIf(not IsNull([日付2]) AND IsNull([日付3]) AND Date() > [日付1],"C","D"))))
お礼コメント
skidaisuki316

お礼率 66% (2/3)

今回IIfの複数条件の記載の仕方が本当によくわかりました。今後にも活かせれそうです。本当にありがとうございました。
投稿日時:2019/06/18 10:32

その他の回答 (全1件)

  • 回答No.2

ベストアンサー率 75% (678/900)

No1です。質問の内容についてですが、各条件に日付1について
記述がない場合があるので、その点について回答した内容に
即して結果を述べておきます。

質問の条件は、

・日付2と3が空白の場合、判定=空白
・日付2と3に両方日付が入っている場合、判定=A
・日付2は日付が入っているが、日付3が空白の場合
 日付1が未来日の場合、判定B
 日付1が過去日の場合、判定C


なので、これをそのまま「判定」というフィールドを
設定すると、No1の回答のようになりますが、
その結果は、


・日付2と3が空白の場合、判定=空白
 「ただし、日付1について条件がないので日付1にデータが
  入っていてもいなくても判定は空白」

・日付2と3に両方日付が入っている場合、判定=A
 「ただし、日付1について条件がないので日付1にデータが
  入っていてもいなくても判定はA」

・日付2は日付が入っているが、日付3が空白の場合
 日付1が未来日の場合、判定B
 「ただし、日付1にデータがなければ判定はD」

 日付1が過去日の場合、判定C
 「ただし、日付1にデータがなければ判定はD」

・日付2は日付が入っているが、日付3が空白の場合
 日付1が今日の場合は判定はD

と、なります。

IIfは入れ子で条件を設定できます。VBAではSelect Case文の
ようなものですが、IIfを多重に入れ子で使用する場合は
条件漏れがないかよく検討して設定する必要があります。

以上です。分からないところが補足してください。
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,600万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ