simple さんの引用:
> 1か所ずつコピーアンドペーストする
そうです。Area単位でコピーペイストすればいいですよ。
貼り付け先ワークシートを定義しておいて
For Each ar In Selection.Areas
ar.Copy ws.Range(ar.Address)
Next
などとすればよいでしょう。
Worksheets("20240410") から、同じ構造の別シート Worksheets("20240410 (2)") へ貼り付けるため、以下のコードを作成し、実行しましたらうまくいきました!
選択しているコピー元シートの非連続セル範囲は、P4:P218、S217:S218 という前提です。
Sub harituke()
Dim ar As Range
Dim ws As Worksheet
Set ws = Worksheets("20240410 (2)")
For Each ar In Selection.Areas
ar.Copy ws.Range(ar.Address)
Next
End Sub