|
楼主 |
发表于 2014-1-26 21:02
|
显示全部楼层
风林火山 发表于 2014-1-26 20:33
Sub 合并明细表()
Dim arr, brr(1 To 10000, 1 To 20), k&, i&, n&, sh
谢谢帮助,但未解决问题,我的模板举个列,实际另外一个工作簿里面有两张原始数据表,一张是电脑,一张是小家电,故你的程序没有通用性。通用性的程序有一个,但03版能用,10版错误
Sub 必出样报表筛选武汉()
Dim d As New Dictionary
Dim ws As Worksheet
Application.DisplayAlerts = False
For Each ws In Worksheets
d(ws.name) = ""
Next
arr = d.Keys
For i = 0 To UBound(arr)
With Worksheets(arr(i))
.Select
ActiveSheet.AutoFilterMode = False
.Rows(1).Select
Selection.AutoFilter
A = .[A1048576].End(3).Row
B = .[IV1].End(xlToLeft).Column
If .Cells(1, 4).Value = "分部" Then
.Range(Cells(1, 1), Cells(A, B)).AutoFilter Field:=4, Criteria1:="=*武汉*"
End If
If .Cells(1, 8).Value = "分部" Then
.Range(Cells(1, 1), Cells(A, B)).AutoFilter Field:=8, Criteria1:="=*武汉*"
End If
.Range(.Cells(1, 1), .Cells(A, B)).Select
Selection.Copy
Worksheets.Add After:=Worksheets(Worksheets.Count)
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
.Delete
End With
Next
End Sub
|
|