• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:access VBA処理がうまくいかない)

VBA処理がうまくいかない

このQ&Aのポイント
  • VBAを使用した処理が正しく動作しない問題が発生しています。請求年月と物件CDを指定して請求データの更新を行う処理ですが、同じ条件での処理が重複してしまい、正しくデータが保存されません。どの部分を修正すれば良いでしょうか?
  • VBAの処理で問題が発生しています。請求年月と物件CDを指定して請求データの更新を行う処理ですが、同じ条件での処理が重複してしまい、データが正しく保存されません。修正が必要な部分はどこでしょうか?助言をお願いします。
  • VBAを使用した処理で問題が発生しています。請求年月と物件CDを指定して請求データの更新を行う処理ですが、同じ条件での処理が2度行われてしまいます。どの部分を修正すれば良いでしょうか?アドバイスをお願いします。

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

  • ベストアンサー
  • ShowMeHow
  • ベストアンサー率28% (1424/5027)
回答No.3

>T_入居者情報のフィールド、そのほかに処理日と請求年月を演算で入力するしくみです。 そのクエリで請求年月にはどういう値が入るのかをしらべ、その値が入った場合、 ・・・[T_請求]![請求年月] > #" & DateSerial(Year(Date), Month(Me![処理日]) + 1, 0) & "#") > 0 となることを検証してください。

komerice
質問者

お礼

よーーーく見てみたらものすごく初歩的なところでつまづいていたことがわかりました。 [T_請求]![請求年月] > #" & DateSerial(Year(Date), Month(Me![処理日]) + 1, 1) & "#") <> 0 ではなく [T_請求]![請求年月] = #" & DateSerial(Year(Date), Month(Me![処理日]) + 1, 1) & "#") <> 0 でした・・・お恥ずかしい限りです。 お付き合いくださりありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • ShowMeHow
  • ベストアンサー率28% (1424/5027)
回答No.2

クエリで請求年月に翌月1日を入れているなら、 [T_請求]![請求年月] > #" & DateSerial(Year(Date), Month(Me![処理日]) + 1, 1) & "#" >を>=にするとか、 dateserial の日付を0にするか、、、 ってことかな? Q_家賃請求用Tで何してんのかわかんないから、合っているかどうかわかんないけど。

komerice
質問者

補足

度々ありがとうございますm()m >クエリで請求年月に翌月1日を入れているなら、 おっしゃる通り、Q_家賃請求用Tでは演算フィールド[請求年月]が存在し、 式には DateSerial(Year(Date), Month(Me![処理日]) + 1, 1) が入っています。 詳細の説明不足で申し訳ありません。 Q_家賃請求用Tの補足をさせていただきますと、 T_入居者情報 契約者CD/契約者名/物件CD/家賃/共益費/・・・ このテーブルの内容をT_請求へコピー(追加)するというクエリです。 T_入居者情報のフィールド、そのほかに処理日と請求年月を演算で入力するしくみです。 私の考えでは、クリックイベントを発生させるF_請求物件選択というフォームの チェックボックスがTrueの物件CD(クエリで抽出条件に指定しています)が T_請求にすでにある、かつ請求年月がダブっていれば追加クエリを実行しない ということができればと思っています。

すると、全ての回答が全文表示されます。
  • ShowMeHow
  • ベストアンサー率28% (1424/5027)
回答No.1

Q_家賃請求用T で更新される[請求年月]は処理日の翌月の一日以降なんですか? >DateSerial(Year(Date), Month(Me![処理日]) + 1, 1) とはそういうこと。 処理日の月なら、+1はいらない。

komerice
質問者

補足

早速の回答ありがとうございます! 請求年月ですが、家賃は前払いですので処理日の翌月分です。 例えば今月ですと、8/25に締めて今月末に9月分の家賃を請求します。 請求日というのはあまり必要ないので毎月1日にあわせています。 いかがでしょうか・・・?

すると、全ての回答が全文表示されます。

関連するQ&A