|
G-Luckさん、ichinoseさん、ponponさん、
いろいろとご回答有り難うございます。
皆さんに書いて頂いたことを参考にチャレンジしてみました。
そのなかで、ichinoseさんから頂いたご回答について
再度お伺いしたいことがありましたので、
大変に申し訳ありませんがご教授頂ければと思います。
お伺いしたいことについでですが…
ichinoseさんのVBを実行してみたところ、
結果としては満足できるように別シートに複写することができたのですが
その途中で「型が一致しません」というメッセージが表示されてしまいました。
デバックしたみたところ、下記の線で囲んでいるところが黄色くなり、
そこを修正しなければいけないようです。
ネットでいろいろと調べてみたのですが
どうしても自力で解決できませんでしたので、
もしこの件にお付き合い頂けるようでしたらご教授願えればと思います。
Sub test()
Dim sht1 As Worksheet
Set sht1 = Worksheets("sheet1")
odx = 2 'sheet2の書き込み行
For idx = 2 To sht1.Cells(sht1.Rows.Count, 1).End(xlUp).Row
'↑idxは、Sheet1の行
With Worksheets("sheet2")
repcnt = sht1.Range("o" & idx).Value
'↑繰り返し数の取得
----------------------------------------------------------------------
.Range(.Cells(odx, 1), .Cells(odx + repcnt - 1, 14)).Value = _
sht1.Range(sht1.Cells(idx, 1), sht1.Cells(idx, 14)).Value
----------------------------------------------------------------------
'A列からN列はそのまま代入
s_add = .Range("o" & odx).Address
'sheet2のO列の書き込みセルの絶対アドレス
With .Range(.Cells(odx, 15), .Cells(odx + repcnt - 1, 15))
.NumberFormat = "0""/" & repcnt & """"
.Formula = "=(row()-row(" & s_add & ")+1)"
.Value = .Value
End With
odx = odx + repcnt
End With
Next idx
End Sub
|
|