½Ð°Ý¦p¦ó³s±µ¥t¤@ÓÀÉ®×Â^¨ú¸ê®Æ©M±Æ§Ç
- ©«¤l
- 5923
- ¥DÃD
- 13
- ºëµØ
- 1
- ¿n¤À
- 5986
- ÂI¦W
- 0
- §@·~¨t²Î
- win10
- ³nÅ骩¥»
- Office 2010
- ¾\ŪÅv
- 150
- ©Ê§O
- ¨k
- ¨Ó¦Û
- ¥xÆW°ò¶©
- µù¥U®É¶¡
- 2010-5-1
- ³Ì«áµn¿ý
- 2022-1-23
        
|
¦^´_ 1# amu1129 - Sub Ex()
- Dim AR, d As Object, Rng As Range, E, i%, Sh$, DKey
- Set d = CreateObject("Scripting.Dictionary")
- With Sheet1
- AR = Split(.[B1], ",")
- For i = 0 To UBound(AR)
- For Each E In .Range("B4", .[B4].End(xlDown))
- If .Cells(E.Row, "F") = AR(i) Then
- d(E & E.Offset(, 1)) = Array(AR(i), E.Offset(, 1), E.Offset(, 5))
- If InStr(Sh, E) = 0 Then Sh = IIf(Sh <> "", Sh & "," & E, E)
- End If
- Next
- Next
- End With
- i = 2
- For Each E In Split(Sh, ",")
- On Error GoTo Er
- With Sheets(i)
- .Cells.Clear
- .[B2] = E
- .[B4].Resize(, 3) = Array("¤Ø¤o", "½s¸¹", "¼Æ¶q")
- For Each DKey In d.keys
- If DKey Like E & "*" Then
- With .Range("b" & Rows.Count).End(xlUp).Offset(1)
- .Resize(, 3) = d(DKey)
- .Offset(, -1) = .Row - 4
- End With
- End If
- Next
- With .Range("b" & Rows.Count).End(xlUp)
- .Offset(1) = "¦Xp"
- .Offset(1, 2) = Evaluate("=SUM(" & .Offset(, 2).Address(, , , 1) & ":D5)")
- End With
- .Range("B4").CurrentRegion.Borders.LineStyle = 1
- End With
- i = i + 1
- Next
- Exit Sub
- Er:
- If Err = 9 Then
- Sheets.Add , Sheets(Sheets.Count)
- Resume
- Else
- MsgBox Err
- End If
- End Sub
½Æ»s¥N½X |
|
|
|
|
|
|