| 
    
     |  | 逆にこちらから質問なんですけど、 オリジナルのコードにあるこの部分は
 何をしている部分なんでしょうか?
 
 想像するに転記先シートWorksheets(3) の
 .Range("A4:U32") に印刷用書式の設定された表のひな型
 があって、「TMP1」のデータ行数が29行以上あるときは
 超過分に必要な行数(29の倍数)だけ、このひな型29行を
 下方にコピーしているようですが?
 
 > With Worksheets(3)
 >   '一時シートから行数を取得
 >   lngMaxRow = Worksheets("TMP1").Range("A1").SpecialCells(xlLastCell).Row
 >   blnFlag = False
 >   j = 1
 >   For i = 31 To lngMaxRow
 >    If j = 1 Then
 >    ElseIf j Mod 29 = 1 Then
 >     .Range("A4:U32").Copy
 >     lngRowY = j + 3
 >     lngRowX = j + 31
 >     strRangeValue = "A" & lngRowY & ":" & "U" & lngRowX
 >     .Range(strRangeValue).PasteSpecial xlPasteAll
 >     .Range(strRangeValue).RowHeight = 27
 >     .PageSetup.PrintArea = .Range(strRangeValue)
 >    End If
 >    j = j + 1
 >   Next
 >
 
 そうすると、
 > 行番号 摘要   数量  単位  単価  金額
 という見出し行は 何行目にあるのですか?
 4行目ですか?
 3行目ですか?
 
 また、項目数は 6項目なので
 > .Range("A4:U32")
 U列までコピーする必要はないような気がするのですが、これは
 なぜでしょう?
 
 よろしければ、教えてください。
 
 |  |