- ©«¤l
- 254
- ¥DÃD
- 6
- ºëµØ
- 0
- ¿n¤À
- 310
- ÂI¦W
- 0
- §@·~¨t²Î
- W10
- ³nÅ骩¥»
- Excel 2016
- ¾\ŪÅv
- 20
- ©Ê§O
- ¨k
- ¨Ó¦Û
- ¥xÆW
- µù¥U®É¶¡
- 2019-6-16
- ³Ì«áµn¿ý
- 2024-9-23
|
¥»©«³Ì«á¥Ñ °a¤ªºµ ©ó 2021-4-8 17:01 ½s¿è
¦^´_ 1# PJChen
¦³ªÅÀ°§Ú¸Õ¸Õ¬Ý¬O¤£¬O§Anªºµ²ªG ·|«ÜºC¦]¬°°j°é¤Ó¦h¤F ¬Ý¬Ý¦³¨S¦³¤j¤jÄ@·NÀ°¦£ ·PÁÂ- Public Sub ¸ó¤u§@ï¤ñ¹ï¨Ã²¾°Ê½m²ß()
- Application.ScreenUpdating = False
-
- Sheets.Copy After:=Sheets(Sheets.Count)
- For X = [H65535].End(3).Row To 1 Step -1
- If IsError(Cells(X, "H")) Then
- Rows(X).Delete
- End If
- Next X
- Range([A65535].End(3), [A4]).Sort [A4], 1, Header:=2
-
-
- Set xD = CreateObject("Scripting.Dictionary")
- Arr = Range([A65535].End(3), [A1])
-
- Application.DisplayAlerts = False
- Sheets(Sheets.Count).Delete
- Application.DisplayAlerts = True
-
- For X = 1 To UBound(Arr, 1)
- xD(Arr(X, 1)) = Trim(xD(Arr(X, 1)) & " " & X)
- Next X
- Erase Arr
-
- A = Dir("T:\0_¦Ûqªí³æ\¤é±`ªí®æ\*.xlsx")
- Workbooks.Open "T:\0_¦Ûqªí³æ\¤é±`ªí®æ\" & A & ""
- Set W = Workbooks("°Ó«~2.xlsm").Sheets(1)
-
- For E = 1 To Sheets.Count
- N = Sheets(E).Name: Sheets(E).Activate
- If IsNumeric(N) Then
- If Int(N) > W.[M2] Then Exit For
- If Int(N) >= W.[M1] And Int(N) <= W.[M2] Then
- Arr = ActiveSheet.UsedRange
- For X = 1 To UBound(Arr, 1)
- For Y = 1 To UBound(Arr, 2)
- If Arr(X, Y) = "®Æ¸¹" Then
- Brr = Range(Cells(1, Y), Cells(Rows.Count, Y).End(3))
- GoTo A01
- End If
- Next Y
- Next X
- A01: Y = Y: Erase Arr
-
- For Each D In xD
- SR = Split(xD(D), " ")
- For Each S In SR
- SInt = Int(S)
- For Z = UBound(Brr) To 1 Step -1
- On Error Resume Next
- If D <> Empty Then
- If D = Brr(Z, 1) Then
- Rows(Z).Cut
- Rows(SInt).Insert , 1
- Brr = Range(Cells(1, Y), Cells(Rows.Count, Y).End(3))
- Exit For
- End If
- End If
- On Error GoTo 0
- Next Z
- Next S
- Next D
-
- End If
- End If
- Next E
-
- Application.ScreenUpdating = True
- End Sub
½Æ»s¥N½X
°Ó«~20408.rar (38.23 KB)
|
|