遅刻の「言い訳」選手権

一行おきに貼り付ける 可能でしょうか
範囲 A1からG22 これをコピー
して

A28 から 一行おきに貼り付ける

range("a1").currentregion.copy
range("a28")ここからどうやったら
一行おきに貼り付けることができるのか
わかる方いますでしょぅか。

質問者からの補足コメント

  • うーん・・・

    A1の行をA28、A2の行をA30、A3の行をA32、・・・ということですか?
    はい できますでしょうか

    No.1の回答に寄せられた補足コメントです。 補足日時:2019/06/10 11:41
  • うーん・・・

    難しいですよね

      補足日時:2019/06/10 11:50

A 回答 (4件)

こんにちは!



横からお邪魔します。
すでに的確な回答がでていますが・・・
いちいちSelectすると時間を要するだけなので、そのままコピー&ペーストする方が簡単です。

Sub Sample1()
 Dim i As Long
  For i = 1 To 22
   Cells(i, "A").Resize(, 7).Copy Cells(i * 2 + 26, "A")
  Next i
End Sub

こんな感じでしょうかね。

※ コピー&ペーストではなく、値だけの操作の方がもう少し早くなります。
(書式などもそのままコピー&ペーストしたい場合は使えません)

Sub Sample2()
 Dim i As Long
  For i = 1 To 22
   Cells(i * 2 + 26, "A").Resize(, 7).Value = Cells(i, "A").Resize(, 7).Value
  Next i
End Sub

といった具合になります。m(_ _)m
    • good
    • 2
この回答へのお礼

満足です有難うございました。

お礼日時:2019/06/10 20:44

コピーした行と次の空白の行を同時にコピーすればいいよ。

    • good
    • 0
この回答へのお礼

ありがとございました

お礼日時:2019/06/11 08:58

単純にA1:G1→A28:G28、A2:G2→A30:G:30・・・A22:G22→A70:G70


までコピペすればいいならこれでいけます

For i = 1 To 22
Range("A:G").Rows(i).Copy
Range("A:G").Rows(26 + (i * 2)).Select
ActiveSheet.Paste
Next
    • good
    • 0
この回答へのお礼

ありがとございました。

お礼日時:2019/06/10 12:49

A1からG22を複数行コピーするのですから


A28から1行おきに貼り付けることはできないでしょう?

A1の行をA28、A2の行をA30、A3の行をA32、・・・ということですか?
この回答への補足あり
    • good
    • 0
この回答へのお礼

ありがとございました

お礼日時:2019/06/11 08:58

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A