- ベストアンサー
エクセルVBAにてコピー
エクセルにて、VBAで、 あるフォーマットをコピーするようなものを作りたいのですが・・・。 例えば1~10行目までをコピーしたいとします。 その内容を1行空けて、12行目に貼り付ける。 次に、23行目に貼り付ける・・・というふうにして VBAにてまだ貼り付けられていない行に 貼り付けられるようにしたいのですが、できるでしょうか? よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
コピーしたい範囲を選択して下記マクロを実行します。 コピーする回数を聞いてくるので入力します。指定した回数、書式をコピーします。 '選択した範囲の書式をコピーする。標準モジュールに貼り付け。 Public Sub SyosikiCopy() Dim rgAdr As String 'コピー元アドレス Dim rgRows As Long 'コピー元行数 Dim CopyKaisuu As Integer 'コピー回数 Dim cot As Integer 'カウンタ rgAdr = Selection.Cells(1, 1).Address rgRows = Selection.Rows.Count CopyKaisuu = InputBox("コピーする回数を入力して下さい") '書式をコピーする Application.CutCopyMode = False: Selection.Copy For cot = 1 To CopyKaisuu Range(rgAdr).Offset((rgRows + 1) * cot, 0).Select Selection.PasteSpecial Paste:=xlFormats, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=False Next Range(rgAdr).Select End Sub
お礼
ありがとうございました。 早速、ためしてみました。上手くいきました。 これを機にもっと勉強しようと思いました。