- ©«¤l
 - 4901 
 - ¥DÃD
 - 44 
 - ºëµØ
 - 24 
 - ¿n¤À
 - 4916 
 - ÂI¦W
 - 270  
 - §@·~¨t²Î
 - Windows 7 
 - ³nÅ骩¥»
 - Office 20xx 
 - ¾\ŪÅv
 - 150 
 - ©Ê§O
 - ¨k 
 - ¨Ó¦Û
 - ¥x¥_ 
 - µù¥U®É¶¡
 - 2010-4-30 
 - ³Ì«áµn¿ý
 - 2025-11-4 
 
                  
 | 
                
¦^´_ 11# joey77373 - Public Rng As Range, MyCol%, MyStr$
 
 - Sub ²Ä¤@ÃD()
 
 -     Dim myInput, i As Integer, Ar As Variant
 
 -     Dim Str As String, Dic As Object
 
 -     myInput = InputBox("½Ð¿é¤JÁ`¦¾¬VªùÂeÈ(%):")
 
 -     Set Dic = CreateObject("Scripting.Dictionary")
 
 -     For i = 2 To 9
 
 -     If Not IsNumeric(Cells(i, 9)) Then MsgBox "I" & i & "½Ð¿é¤J¼Æ¦r": Exit Sub
 
 -       If Cells(i, 9) >= (myInput / 1) Then
 
 -          Dic(Cells(i, 1).Value) = Array(Cells(i, 9), Cells(i, 1))
 
 -          If Rng Is Nothing Then Set Rng = Cells(i, "L").Resize(, 6) Else Set Rng = Union(Rng, Cells(i, "L").Resize(, 6))
 
 -       End If
 
 -     Next i
 
 -     If Dic.Count = 0 Then MsgBox "¨S¦³²Å¦X±ø¥óªº¤¸¥ó": Set Rng = Nothing: Exit Sub
 
 -     TestStr = Join(Dic.keys, ",")
 
 -     Do Until Dic.Count = 0
 
 -      Ar = Application.Transpose(Application.Transpose(Dic.items))
 
 -      MyMax = Application.Max(Application.Index(Ar, , 1))
 
 -      MyStr = Application.VLookup(MyMax, Ar, 2, 0)
 
 -      MsgBox "¤¸¥ó  " & MyStr & "  " & MyMax
 
 -      Dic.Remove MyStr
 
 -     Loop
 
 - End Sub
 
 - Sub ²Ä¤GÃD()
 
 - Dim Rw As Range
 
 - If Rng Is Nothing Then MsgBox "¥¼¦³²Å¦X¤§¤¸¥ó¡A½Ð¥ý°õ¦æ²Ä¤@ÃD": Exit Sub
 
 - If Application.Count(Rng) <> Rng.Count Then MsgBox Rng.SpecialCells(xlCellTypeConstants, 2).Address & "¬°«D¼ÆÈ¸ê®Æ": Exit Sub
 
 - MyCol = InputBox("·Å«Ç®ÄÀ³%¼Æ=1" & Chr(10) & "¯ä®ñ®ø¯Ó%¼Æ=2" & Chr(10) & "»Ä¤Æ%¼Æ=3" & Chr(10) & "Àu¾i¤Æ%¼Æ=4" & Chr(10) & "«ª÷ÄÝ%¼Æ=5" & Chr(10) & "PÀù©Ê%¼Æ=6", "½Ð¿é¤JÄæ¦ì", 1)
 
 - For Each Rw In Rng.Rows
 
 -    If Rw.Cells(, MyCol) > MyMaxNum Then MyMaxNum = Rw.Cells(, MyCol): MyStr = Cells(Rw.Row, 1)
 
 - Next
 
 - MsgBox "¤¸¥ó  " & MyStr & [K1].Offset(, MyCol) & Format(MyMaxNum, "0.00%")
 
 - End Sub
 
 - Sub ²Ä¤TÃD()
 
 - Dim A As Range, Temp#
 
 - Set A = [S:S].Find(MyStr, lookat:=xlWhole)
 
 - Temp = A.Offset(, 7)
 
 - Do Until Left(A, 1) <> MyStr
 
 -   If A.Offset(, MyCol) <= [A:A].Find(MyStr, lookat:=xlWhole).Offset(, MyCol) Then
 
 -      If A.Offset(, 7) <= Temp Then Temp = A.Offset(, 7): Ch = A: Test = A.Offset(, MyCol)
 
 -   End If
 
 -   Set A = A.Offset(1)
 
 - Loop
 
 - MsgBox "´À¥N¤¸¥ó " & Ch & [S1].Offset(, MyCol) & "È= " & Test & "Á`¦¾¬VÅv«È= " & Temp
 
 - End Sub
 
  ½Æ»s¥N½X |   
 
 
 
 |