• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excelマクロ、昨日のJの値を今日のKに反映させ)

Excelマクロで前日データを反映する方法

このQ&Aのポイント
  • Excelマクロを使用して、昨日のJ列の値を今日のK列に自動で反映させる方法を提案しています。
  • シートには9/12-15までのデータがあり、日付に基づいて申請者ごとに前日のデータを今日に反映させる仕組みを説明します。
  • 問題となるのは、現在のマクロではK列に値が反映されず、修正が必要であることを共有し、アドバイスを求めています。

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

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率66% (1734/2604)
回答No.2

VBAだと実行日の昨日みたいですが、もし、昨日というのがA列の日付にたいして昨日でしたら 2行目からデータがあるとして K3に =IF(SUMIFS(J:J,A:A,A3-1,C:C,C3)=0,"",SUMIFS(J:J,A:A,A3-1,C:C,C3)) として下にコピーすればできないでしょうか。 ただし、同じ日に申請者が重複するデータが無い前提ですが。

joezen05
質問者

お礼

ありがとうございました!狙い通りの値がKに反映しました。同じ日に申請者が重複しない前提ですので、こちらの式をうまく利用したいです。助かりました。

その他の回答 (1)

  • kon555
  • ベストアンサー率51% (1845/3565)
回答No.1

『今日のKに昨日のJが出てこず』という事は、基本的にはこのマクロを含むワークブックは問題なく使用できていた、という認識で良いでしょうか?  もしそうであれば、入力が不正で「セルが日付を含むか」「日付が昨日であるか」「同じ申請者で、昨日のJの値が数値であるか」という辺りで弾いて締まっている可能性が高いです。  まずはセル内容の見直しや再入力と、それと並行してステップイン起動などで『どこでどんな判定になっているか』をチェックする事をおススメします。  ステップインなどでのバグ取りは以下のページを参考にしてみて下さい。 https://asatte.biz/vba-debug-menu/ https://daitaideit.com/vba-debug/

joezen05
質問者

お礼

ご指摘の点、心当たりが大きくあります。Formsのデータを反映させているシート上のマクロなので、それを加味したマクロは自分の力ではできないかもしれません・・・。デバッグチェックやってみます。ありがとうございました。

関連するQ&A

専門家に質問してみよう