• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:マクロの修正をお願いします。)

マクロ修正のポイントとは?

このQ&Aのポイント
  • エクセルのマクロに関する質問で、特定のシートへのデータ転送を行う方法について説明しています。
  • 現在のマクロでは、転送ボタンを押すと『様式1』と『様式2』のシートに全てのデータが張り付けられてしまう問題があります。
  • 修正ポイントとして、毎日のデータ転送を行いながら、シートを保護した状態で保存することが挙げられます。

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

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

No1訂正です 毎回同じデータ ↓ 毎回始まりが同じで新しく追加されたデータを含む範囲のデータ

msojndsknks
質問者

補足

ありがとうございます。 すみません。初心者なのでどこをどう修正すべきか分からないのです。 B16に張り付けるということでしょうか? 具体的な修正例を提示して頂けないでしょうか。 すみませんがよろしくお願いします。

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

その他の回答 (2)

  • kkkkkm
  • ベストアンサー率66% (1746/2622)
回答No.3

> 具体的な修正例を提示して頂けないでしょうか。 以下のような状態にという事でいかがでしょう。 1日に1行しか増えないとしてコピーするデータの先頭行を毎回様式Aの最終行に変更する場合 With 様式A .Range(.Cells(Rows.Count, "B").End(xlUp), .Cells(2000, "AA")).Copy End With 様式1.Range("B" & Rows.Count).End(xlUp).Offset(1).PasteSpecial 欠点、転送ができなかった日がありその日以降のデータが様式Aに追記された場合、できなかった日のデータは転送できない。    ボタンを押すたびに様式1にデータが追加されてしまう。    過去のデータの間違いを様式Aで変更した場合、その部分をコピペしなければいけない。 利点 様式Aの過去のデータを間違って変更していた場合でも様式1には影響がない。 毎回すべてを同じところへ貼り付ける場合(B9から始まるという事なので) 様式A.Range("B16:AA2000").Copy 様式1.Range("B9").PasteSpecial xlPasteValues 欠点、様式Aの過去のデータを間違って変更していた場合、間違ったデータがそのまま転送されてしまう。 利点 過去のデータの間違いを様式Aで修正した場合、その部分だけをコピペしなくてもボタンを押すだけで修正が様式1に適用される    転送できなかった日があっても翌日以降でも転送すれば、できなかった日の部分も含めて転送される。

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

> 様式A.Range("B16:AA2000").Copy > 様式1.Range("B" & Rows.Count).End(xlUp).Offset(1).PasteSpecial xlPasteValues > 様式B.Range("B16:W2000").Copy > 様式2.Range("B" & Rows.Count).End(xlUp).Offset(1).PasteSpecial xlPasteValues B16からデータが始まるとしたら、毎回同じデータをそれぞれ最後に追加しているわけですから、当然表示されている結果になってしまうと思いますが・・・ 最後に足さずに毎回すべてを同じところへ貼り付けるか、コピーするデータの先頭行を毎回適切な行に変更するか、どちらかにしないとだめなのではないでしょうか。

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

関連するQ&A