| 
    
     |  | ▼Statis さん: >こんにちは
 >
 >
 >下記のコードを新規ファイルに記載して下さい。
 >
 >コードを実行すると「csv」ファイルの選択になりますので該当ファイルを
 >探し選択して下さい。
 >新規ファイルが自動的に出来、そのファイルにH列の各値のシートが出来て
 >オートフィルタで抽出したデータがコピーされ並び替え、列の削除を行います。
 >
 >一度試してみて下さい。(結果を報告願います)
 >
 >Sub Test()
 >Dim MyFil As String, Wb As Workbook, Ws As Worksheet
 >Dim NowWb As Workbook, NowWs As Worksheet, C As Range
 >
 >MyFil = Application.GetOpenFilename("テキスト ファイル (*.csv), *.csv")
 >If MyFil = "False" Then Exit Sub
 >Application.ScreenUpdating = False
 >Set Ws = ThisWorkbook.Worksheets("Sheet1")
 >Set NowWb = Workbooks.Add(1)
 >Set Wb = Workbooks.Open(MyFil)
 >With Wb.ActiveSheet
 >   .Columns(8).AdvancedFilter xlFilterCopy, , Ws.Range("A1"), True
 >   .Rows(1).AutoFilter
 >   For Each C In Ws.Range("A2", Ws.Range("A65536").End(xlUp))
 >     .Columns(8).AutoFilter 8, C.Value
 >     Set NowWs = NowWb.Worksheets.Add
 >     NowWs.Name = C.Value
 >     .AutoFilter.Range.Copy NowWs.Range("A1")
 >     With NowWs
 >       .Rows(1).Delete
 >       .UsedRange.Sort Key1:=.Range("A1"), Order1:=xlAscending, Key2:=.Range("B1") _
 >       , Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
 >       False, Orientation:=xlTopToBottom, SortMethod:=xlPinYin, DataOption1:= _
 >       xlSortNormal, DataOption2:=xlSortTextAsNumbers
 >       .Columns("A:B").Delete
 >       .Cells.EntireColumn.AutoFit
 >     End With
 >     Set NowWs = Nothing
 >   Next C
 >   .AutoFilterMode = False
 >End With
 >Ws.Columns(1).Clear
 >Wb.Close False
 >With Application
 >   .DisplayAlerts = False
 >   NowWb.Sheets("Sheet1").Delete
 >   .DisplayAlerts = True
 >   .ScreenUpdating = True
 >End With
 >Set NowWb = Nothing: Set Ws = Nothing: Set Wb = Nothing
 >End Sub
 
 
 有難う御座います
 ただ それぞれに 既にシート名が振ってあるため
 Set Ws = ThisWorkbook.Worksheets("Sheet1")
 上記で止まってしまいます。。
 
 
 |  |