|
う〜ん。応用が利かないって事なんでしょうか?
あまり良く理解していませんが...。
>=A2 でもいいのですが全部設定して空白があると"0"の数字が印刷されてしまします。
こうすれば良かったのでは。
=IF(A2="","",A2)
Offsetプロパティーが解らなかったら、ヘルプで調べてください。
Sub djj()
Dim EndR As Long, i As Long
Sh2R = 2
EndR = Sheets("Sheet1").Range("A65536").End(xlUp).Row
For i = 4 To EndR
With Sheets("Sheet2").Cells(Sh2R, 1)
.Value = "シート1 " & Sheets("Sheet1").Range("A" & i).Address(0, 0) & "行の場合、" _
& .Address(0, 0) & "のセルを基点にする。"
.Offset(0, 5).Value = "シート1 " & Sheets("Sheet1").Range("B" & i).Address(0, 0)
.Offset(2, 5).Value = "シート1 " & Sheets("Sheet1").Range("C" & i).Address(0, 0)
.Offset(2, 8).Value = "シート1 " & Sheets("Sheet1").Range("D" & i).Address(0, 0)
.Offset(0, 11).Value = "シート1 " & Sheets("Sheet1").Range("E" & i).Address(0, 0)
.Offset(1, 11).Value = "シート1 " & Sheets("Sheet1").Range("F" & i).Address(0, 0)
End With
Sh2R = Sh2R + 7
Next
End Sub
上と同じですが...。
Sub djj2()
Dim EndR As Long, i As Long
Sh2R = 2
EndR = Sheets("Sheet1").Range("A65536").End(xlUp).Row
For i = 4 To EndR
With Sheets("Sheet2")
.Range("A" & Sh2R).Value = "シート1 " & Sheets("Sheet1").Range("A" & i).Address(0, 0) & _
"行の場合、" & .Range("A" & Sh2R).Address(0, 0) & "のセルを基点にする。"
.Range("F" & Sh2R).Value = "シート1 " & Sheets("Sheet1").Range("B" & i).Address(0, 0)
.Range("F" & Sh2R + 2).Value = "シート1 " & Sheets("Sheet1").Range("C" & i).Address(0, 0)
.Range("I" & Sh2R + 2).Value = "シート1 " & Sheets("Sheet1").Range("D" & i).Address(0, 0)
.Range("L" & Sh2R).Value = "シート1 " & Sheets("Sheet1").Range("E" & i).Address(0, 0)
.Range("L" & Sh2R + 1).Value = "シート1 " & Sheets("Sheet1").Range("F" & i).Address(0, 0)
End With
Sh2R = Sh2R + 7
Next
End Sub
>100ブロック以上作らなければいけません
同じ物を100こづつって意味なのか解らなかったんで一応。
Sub djj100()
Dim EndR As Long, i As Long
Sh2R = 2
EndR = Sheets("Sheet1").Range("A65536").End(xlUp).Row
If 100 * 7 * (EndR - 3) + 1 - 4 > 65536 Then
MsgBox "65536行超えます。中止。"
End
End If
For i = 4 To EndR
For ii = 1 To 100
With Sheets("Sheet2").Cells(Sh2R, 1)
.Value = "シート1 " & Sheets("Sheet1").Range("A" & i).Address(0, 0) & "行の場合、" _
& .Address(0, 0) & "のセルを基点にする。"
.Offset(0, 5).Value = "シート1 " & Sheets("Sheet1").Range("B" & i).Address(0, 0)
.Offset(2, 5).Value = "シート1 " & Sheets("Sheet1").Range("C" & i).Address(0, 0)
.Offset(2, 8).Value = "シート1 " & Sheets("Sheet1").Range("D" & i).Address(0, 0)
.Offset(0, 11).Value = "シート1 " & Sheets("Sheet1").Range("E" & i).Address(0, 0)
.Offset(1, 11).Value = "シート1 " & Sheets("Sheet1").Range("F" & i).Address(0, 0)
End With
Sh2R = Sh2R + 7
Next
Next
End Sub
|
|