• ベストアンサー

VBAを使って色々なセルに同じ文言を入力したいのですが・・・

VBA超初心者です。 sheet2(A2)に日付(平成○年○月○日)を入力したのですが、 これをsheet1の色々なセルに反映させたいのです。 反映さえたいセルは規則性があって、 D、H、L列の3行目、28行目、53行目・・・と25行置きに反映させたいのですが、どうすればいいでしょうか??

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

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

A2にはすでに入力されているのですね? ならばとりあえず253行目まで Sub test01() x = Sheets("Sheet2").Range("A2").Value For i = 3 To 253 Step (25) With Sheets("Sheet1") .Range("D" & i).Value = x .Range("H" & i).Value = x .Range("L" & i).Value = x End With Next End Sub

ty123456
質問者

お礼

ありがとうございました。 行数はもっとあったのですが、数字を変えたら一発でできました! 大変助かりました。

その他の回答 (3)

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.4

Sub try() Dim i As Long For i = 3 To 300 Step 25 '300行まで With Worksheets("Sheet1").Cells(i, 4).Range("A1,E1,I1") .NumberFormat = Worksheets("Sheet2").Range("A2").NumberFormat .Value = Worksheets("Sheet2").Range("A2").Value End With Next End Sub 300行までの限定版。(300を適宜変更されてもOK) ご参考程度に。

  • hige_082
  • ベストアンサー率50% (379/747)
回答No.3

一例です Sub test() Dim i As Long, ii As Integer Dim a As Variant a = Worksheets("sheet2").Range("a2").Text With Worksheets("sheet1") For i = 3 To 1000 Step 25 For ii = 0 To 8 Step 4 .Cells(i, 4 + ii).Value = a Next ii Next i End With End Sub

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.2

参考までに Sub Macro1() Range("A2").Copy For j = 3 To InputBox("何行目まで") Step 25 Range("A" & j).PasteSpecial Next End Sub