|
- Sub 拆分()
- Dim Sht As Workbook, Bm As String
- Dim Hx, Lx, Hx1, X, X2, arr
- Dim Fd As FileDialog, Path As String
- Application.ScreenUpdating = False
- Set Fd = Application.FileDialog(msoFileDialogFolderPicker)
- If Fd.Show = -1 Then Path = Fd.SelectedItems(1) & IIf(Right(Fd.SelectedItems(1), 1) = "", "", "") Else: Exit Sub
- With Sheet1
- Hx = .Range("A65536").End(xlUp).Row
- Lx = .Range("A1").End(xlToRight).Column
- arr = .Range(.Cells(1, 1), Cells(Hx, Lx))
- For X = 2 To Hx
- Bm = arr(X, 1)
- For X2 = X + 1 To Hx
- If arr(X2, 1) <> Bm Or X2 = Hx Then
- If X2 = Hx Then
- Hx1 = Hx
- Else
- Hx1 = X2 - 1
- End If
- GoTo Y
- End If
- Next
- Y:
- Set Sht = Workbooks.Add
- Worksheets(1).Name = Bm
- .Range(.Cells(1, 1), .Cells(1, Lx)).Copy Range("A1")
- .Range(.Cells(X, 1), .Cells(Hx1, Lx)).Copy Range("A2")
- ActiveWorkbook.SaveAs Path & Bm & ".xls", xlWorkbookDefault
- ActiveWorkbook.Close
- X = Hx1
- Next
- End With
- Application.ScreenUpdating = True
- End Sub
复制代码 |
|