Excel 워크북의 분할
Option Explicit
Sub ()
Application.ScreenUpdating = True
Dim br, x As Integer, sh As Worksheet, d As New Dictionary, i As Integer, rg As Range, k As Integer, j As Integer, arr(), l As Integer
i = Range("A2").End(xlDown).Row
For Each rg In Range("H3:H" & i)
d(rg.Value) = ""
Next
For k = 0 To d.Count - 1
For j = 3 To i
If Range("H" & j) = d.Keys(k) Then
x = x + 1
ReDim Preserve arr(1 To 12, 1 To x)
arr(1, x) = x
arr(2, x) = Range("B" & j)
arr(3, x) = Range("C" & j)
arr(4, x) = Range("D" & j)
arr(5, x) = Range("E" & j)
arr(6, x) = Range("F" & j)
arr(7, x) = Range("G" & j)
arr(8, x) = Range("H" & j)
arr(9, x) = Range("I" & j)
arr(10, x) = Range("J" & j)
arr(11, x) = Range("K" & j)
arr(12, x) = Range("L" & j)
End If
Next j
Set sh = Sheets.Add(, Sheets(Sheets.Count))
sh.Name = d.Keys(k)
sh.Range("a1:l1").Merge
sh.Range("a1") = " 2015 9 21 2015 "
sh.Range("a1").HorizontalAlignment = xlCenter
sh.Range("a2:L2") = Array(" ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ")
sh.Range("a3").Resize(UBound(arr, 2), 12) = WorksheetFunction.Transpose(arr)
sh.Range("a3:L" & (UBound(arr, 2) + 2)).HorizontalAlignment = xlCenter
br = Array(6.5, 17, 8.38, 11, 16, 15, 12, 12, 8.38, 8.38, 10, 30)
For x = 1 To 12
sh.Columns(x).ColumnWidth = br(x - 1)
Next x
Erase arr: x = 0
Sheets(" ").Activate
Next k
Application.ScreenUpdating = False
End Sub
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Excel Grep toolExcel Grep tool ■히나가타 ■ 시트 구성 ExcelGrep.cls...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.