- ©«¤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
        
|
¦^´_ 2# rouber590324
¼Ó¥DÀ³¸Ó¬O´Á±æ¦p¦¹ªº- Option Explicit
- Sub Ex()
- Dim D As Object, Rng As Range, R As Range
- Dim xMax As Single, xMin As Single
- Set D = CreateObject("SCRIPTING.DICTIONARY") '¦r¨åª«¥ó
- Set Rng = Sheets("¸ê®Æ").[I3:O21] '¸ê®Æ½d³ò
- xMax = Application.Max(Rng.Columns(3)) '²Ä3Äæ(kÄæ)ªº³Ì¤jÈ
- xMin = Application.Min(Rng.Columns(3)) '²Ä3Äæ(kÄæ)ªº³Ì¤pÈ
- For Each R In Rng.Rows '¸ê®Æ½d³ò(ª«¥ó)ªº¦C(ª«¥ó)
- If R.Cells(3) = xMax Then '¬O³Ì¤jȪº¼ÆÈ
- If D.exists(xMax) Then '¦r¨åª«¥óªºkey(ÃöÁä¦r)¬O¦s¦bªº
- Set D(xMax) = Union(R, D(xMax)) 'Union:¨âөΦhÓ½d³òªº¦X¨Ö½d³ò¡C
- Else
- Set D(xMax) = R '³]©w½d³ò
- End If
- ElseIf R.Cells(3) = xMin Then '¬O³Ì¤pȪº¼ÆÈ
- If D.exists(xMin) Then
- Set D(xMin) = Union(R, D(xMin))
- Else
- Set D(xMin) = R
- End If
- End If
- Next
- D(xMax).Copy Sheets("³Ì¤jÈ").[a1]
- D(xMin).Copy Sheets("³Ì¤pÈ").[a1]
- End Sub
½Æ»s¥N½X |
|