- ©«¤l
- 1446
- ¥DÃD
- 40
- ºëµØ
- 0
- ¿n¤À
- 1470
- ÂI¦W
- 0
- §@·~¨t²Î
- Windows 7
- ³nÅ骩¥»
- Excel 2010 & 2016
- ¾\ŪÅv
- 50
- ©Ê§O
- ¨k
- ¨Ó¦Û
- ¥xÆW
- µù¥U®É¶¡
- 2020-7-15
- ³Ì«áµn¿ý
- 2024-11-28
|
¦^´_ 5# aassddff736
¿ûªO½s¸¹¦³«½Æ,»Ý¤â°Ê±Æ°£«½Æ«á¤~Åã¥Ü·J¾ã¸ê®Æ:
Option Explicit
Sub ¸ê®Æ·J¾ã¤J¥D¶¿z¿ï°Ï()
Dim Brr, Crr, Z, Q, i&, j%, R&, N&, S, T$, E&, TT$
Set Z = CreateObject("Scripting.Dictionary")
With Sheets("¥D¶")
.Activate
If .AutoFilter Is Nothing Then [B17:P17].AutoFilter Else If .FilterMode = True Then .ShowAllData
With ActiveWindow
.FreezePanes = False
.ScrollRow = 13
.SplitRow = 5
.FreezePanes = True
End With
.UsedRange.Offset(17).EntireRow.Delete
.[B:D].NumberFormat = "@"
.[B:D].Font.Bold = True
End With
ReDim Crr(1 To 10000, 1 To 15)
Q = Array(Range([Àx¦ì!B3], [Àx¦ì!A65536].End(xlUp)), Range([Àx¦ì!E3], [Àx¦ì!D65536].End(xlUp)))
For Each Brr In Q
Brr = Brr
For i = 1 To UBound(Brr)
N = N + 1: T = Brr(i, 2): Crr(N, 1) = Brr(i, 1): Crr(N, 2) = T: Z(T) = N
Next
Next
E = N: Q = Array("1¦Ü588", "SUPER", "POWER", "POWER¸Õ²£", "TEST", "«Ý³ø¼o", "³ø¼o")
For Each S In Q
Brr = Sheets(S).[A1].CurrentRegion
For i = 3 To UBound(Brr)
R = Z(Brr(i, 1))
If Z.Exists(Brr(i, 2) & "|") Then TT = TT & " / " & S & "ªí_" & Brr(i, 2) Else Z(Brr(i, 2) & "|") = "A"
If R = 0 Then N = N + 1: R = N
For j = 1 To 14: Crr(R, j + 1) = Brr(i, j): Next
If R > E Then Crr(R, 1) = S
Next
Next
If N = 0 Then Exit Sub
If TT <> "" Then MsgBox "¿ûªO½s¸¹ " & Mid(TT, 4) & " «½Æ": Exit Sub
With [B18].Resize(N, 15): .Value = Crr: .Borders.LineStyle = 1: End With
End Sub
Sub ²M°£¥D¶¿z¿ï°Ï¸ê®Æ()
With Sheets("¥D¶")
.Activate
If .AutoFilter Is Nothing Then [B17:P17].AutoFilter Else If .FilterMode = True Then .ShowAllData
With ActiveWindow: .FreezePanes = False: .ScrollRow = 1: .SplitRow = 17: .FreezePanes = True: End With
.UsedRange.Offset(17).EntireRow.Delete
End With
End Sub |
|