• ベストアンサー

「シート1のアクティブセルをコピーしてシート2のA列の最終行+1に貼り付ける」

「シート1のアクティブセルをコピーしてシート2のA列の最終行+1に貼り付ける」 というVBAコードが知りたいのですが Sub Macro1() Selection.Copy Sheets("Sheet2").Select Selection.End(xlDown).Offset(1).Select ActiveSheet.Paste End Sub ではうまくいきませんでした。 ・マクロを実行する前のもともとのアクティブセルはシート1の入力されたセル上にあるとします。 ・シート2のA列にはA1~A?と削除したり挿入したりで数が変わりますが何かしら文字列が隙間なく入っています。 よろしくお願いします。

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

  • ベストアンサー
  • s_saike
  • ベストアンサー率46% (36/77)
回答No.1

これではどうでしょうか。 Sub Macro1() Selection.Copy Sheets("Sheet2").Select Cells(Cells(1, 1).End(xlDown).Row + 1, 1).Select ActiveSheet.Paste End Sub

noname#150498
質問者

お礼

できました! ご回答ありがとうございます。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

Sub test01() d = Worksheets("Sheet2").Range("A65536").End(xlUp).Row ActiveCell.Copy Worksheets("Sheet2").Cells(d + 1, "A") End Sub Selectはマクロの記録から勉強するとそれになるが、初心者っぽいので脱却をお勧めする。 コピーのDestinationの書き方を解説書で勉強のこと。 Activecellも場合によっては、うっかり目的以外を指している時実行したりして不安定。

noname#150498
質問者

お礼

勉強してみます。 大変参考になりました。ご回答ありがとうございます。

関連するQ&A