promotion image of download ymail app
Promoted

EXCEL裡VBA排序SORT的問題

在排序SORT的項目中,KEY最多不是只能用到KEY3,但我需要用到KEY4,但限制只能用到KEY3而以,有沒有法子能夠用到KEY4,甚至更多,有沒有法子

已更新項目:

帥哥,在vba那程式部分可再說清楚點嗎,像我要sort的範圍是a,b,c,d,e,f,g,但key的順序是 a, b, d,e,這樣的話我要怎麼寫才對

1 個解答

評分
  • 1 0 年前
    最佳解答

    你可以利用CONCATENATE這個函數去解決排序的問題

    你要排序的順序為 E A B D F

    H1=CONCATENATE(E1,A1,B1,D1,F1)

    再將程式往下copy

    再來只要排序H

    嘿嘿~~以後要排序幾個都不是問題了

    2006-06-07 10:31:05 補充:

    至於vba...Sub SortSelection() For c = Selection.Columns.Count To 1 Step -1 Selection.Sort _ Key1:=Selection.Columns.Item(c), _ Order1:=xlAscending, _ Header:=xlGuess, _ OrderCustom:=1, _ MatchCase:=False, _ Orientation:=xlTopToBottom Next c End Sub

    2006-06-13 06:00:48 補充:

    Sub sort()Range("H2").SelectActiveCell.FormulaR1C1 = _"=CONCATENATE(RC[-7],"" "",RC[-6],"" "",RC[-4],"" "",RC[-3])"Selection.AutoFill Destination:=Range("H2:H9"), Type:=xlFillDefaultRange("H2:H9").SelectSelection.Copy

    2006-06-13 06:01:32 補充:

    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _False, Transpose:=FalseRange("a2:H9").SelectSelection.Sort Key1:=Range("H2"), Order1:=xlAscending, Header:=xlGuess, _OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

    2006-06-13 06:01:54 補充:

    Range("H2:H9").SelectSelection.ClearContentsEnd Sub

    2006-06-13 06:03:30 補充:

    300字的限制...很無力,其實我只是將CONCATENATE用在VBA很好用試試看吧

    • Commenter avatar登入以對解答發表意見
還有問題?馬上發問,尋求解答。