|
▼Statis さん:
綺麗なプログラム、本当にありがとうございます。
早速今試してみました。
が、サンプルと違い、8列目(H列)に検索データ
が入っているので、以下のように書き換えましたが
"For i = 0 To UBound(Ro) - 1"のところで
エラーが出てしまいました。
配列のところまで理解できていないので、UBound
の指定が間違っているのだと思います。
何とか調べてみます。
(進歩出来なくて泣けてきます・・)
本当にありがとうございました。
Sub test()
Dim Fi As Range, Ro() As Long, Ad As String, Co As Long
Dim Ws As Worksheet, i As Long
Application.ScreenUpdating = False
With Worksheets("hadata_recv")
.Range("H65536").End(xlUp).Offset(1).Value = "データ1"
Set Fi = .Columns(1).Find("IF0d", , xlValues, xlWhole, , xlPrevious)
If Not Fi Is Nothing Then
Ad = Fi.Address: Co = 0
Do
ReDim Preserve Ro(Co)
Set Fi = .Columns(8).FindNext(Fi)
Ro(Co) = Fi.Row
Co = Co + 1
Loop Until Ad = Fi.Address
End If
For i = 0 To UBound(Ro) - 1
Set Ws = Worksheets.Add(After:=Sheets(Sheets.Count))
.Range(.Cells(Ro(i), 8), .Cells(Ro(i + 1) - 1, 8)).EntireRow.Copy Ws.Range("A1")
Set Ws = Nothing
Next i
.Range("A65536").End(xlUp).ClearContents
|
|