こんにちは、違うサイトで見つけたマクロなんですけど、そのマクロについての質問です。以下がそのマクロです。
Sub MakeNippo()
Dim StartDy As Date
Dim EndDy As Date
Dim Celldy As Date
Dim i As Integer
Dim Sh As Worksheet
Dim ShNum As Integer
Dim Wdy As Integer

Set Sh = Worksheets("日報1")
StartDy = CDate(Range("A2"))
EndDy = CDate(Range("C2"))
Celldy = StartDy
Wdy = Format(StsrtDy, "w")
ShNum = 1
Do While Celldy < EndDy
For i = 4 + Wdy To 11
Sh.Cells(i, 1).Value = Format(Celldy, "ggge年mm月dd日")

Celldy = Celldy + 1
If Celldy > EndDy Then Exit For
Next

If Celldy < EndDy Then
Worksheets("原紙").Copy after:=Sh

ShNum = ShNum + 1
Set Sh = ActiveSheet
Sh.Visible = xlSheetVisible
Sh.Name = "日報" & ShNum
Wdy = 1  
End If
Loop
End Sub

日付をA2とC2に入れるとその間の日付が1週間づつシートに出力されるマクロなのですが、このまま実行するとA5,A6,A7,A8,A9,A10,A11に日付が出力されます。
これをA7,A14,A21,A28,A35,A42,A49に(7行おきに)日付を出力したいのですが
このマクロのどの部分を変えれば良いのでしょうか?当方マクロは何の事やらさっぱり解らないのでどなたか助けていただけないでしょうか?よろしくお願いします

A 回答 (1件)

For の次を



Sh.Cells(i, 1).Value = Format(Celldy, "ggge年mm月dd日")
  ↓
Sh.Cells(7 + (i - 4 - Wdy) * 7, 1).Value = Format(Celldy, "ggge年mm月dd日")

と変えればいいと思います。

前半の、Wdy = Format(StsrtDy, "w") はWdy = Format(StartDy, "w") のうち間違い?
    • good
    • 0
この回答へのお礼

早速の解答ありがとうございました。さっそく試してみたところ問題解決できました。ありがとうございました。

お礼日時:2001/07/23 14:34

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


このカテゴリの人気Q&Aランキング

おすすめ情報