|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
Sub test()
Application.DisplayAlerts = False
Application.ScreenUpdating = False
Set r1 = Sheets("订单汇总")
Set r2 = Sheets("合同模板")
n = r1.[A1048576].End(3).Row
Set d = CreateObject("scripting.dictionary")
For i = 2 To n
d(r1.Cells(i, 1).Value) = ""
Next
m = d.Count
For j = 0 To m - 1
sr = d.keys()(j)
r2.Copy
ActiveWorkbook.SaveAs ThisWorkbook.Path & "" & sr
[M2] = d.keys()(j)
k = 0
For i = 2 To n
If r1.Cells(i, 1) = d.keys()(j) Then
With r1
Cells(16 + k, 1) = k + 1
[B16].Offset(k, 0) = .Cells(i, 2)
[D16].Offset(k, 0) = .Cells(i, 3)
[E16].Offset(k, 0) = .Cells(i, 4)
[F16].Offset(k, 0) = .Cells(i, 5)
[G16].Offset(k, 0) = .Cells(i, 6)
[I16].Offset(k, 0) = .Cells(i, 7)
[L16].Offset(k, 0) = .Cells(i, 8)
[N16].Offset(k, 0) = .Cells(i, 9)
[O16].Offset(k, 0) = .Cells(i, 10)
[P16].Offset(k, 0) = .Cells(i, 11)
k = k + 1
End With
End If
Next
ActiveSheet.Name = sr
ActiveWorkbook.Close True
Next
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
|
|