|
楼主 |
发表于 2019-10-9 11:57
|
显示全部楼层
1#最后的代码有几句没有意义,根据11#老师的指正删改如下:
Sub 字典套字典基础入门案例()
Dim d As Object, area, school, id, person, age, s, n&
arr = [a1].CurrentRegion
Set d = CreateObject("scripting.dictionary")
For i = 2 To UBound(arr)
area = arr(i, 5): school = arr(i, 4): id = arr(i, 1): person = arr(i, 2): age = arr(i, 3)
If Not d.exists(area) Then Set d(area) = CreateObject("scripting.dictionary")
If Not d(area).exists(school) Then Set d(area)(school) = CreateObject("scripting.dictionary")
d(area)(school)(id) = Array(person, age)
Next
s = Array("地区", "高校", "学号", "姓名", "年龄")
Application.ScreenUpdating = False
For Each area In d.keys
Workbooks.Add
With ActiveWorkbook
For Each school In d(area)
.Worksheets.Add.Name = school: n = 0
For Each id In d(area)(school)
n = n + 1
Cells(1, 1).Resize(, 5) = s
Cells(n + 1, 1) = area
Cells(n + 1, 2) = school
Cells(n + 1, 3) = id
Cells(n + 1, 4).Resize(, 2) = d(area)(school)(id)
Next
Next
.SaveAs ThisWorkbook.Path & "\" & area & ".xlsx"
.Close True
End With
Next
Application.ScreenUpdating = True
End Sub
|
|