返回列表 上一主題 發帖

請問VBA高手大大~要如何改寫才會更簡單易懂呢?

請問VBA高手大大~要如何改寫才會更簡單易懂呢?

請問VBA高手大大~
以下是針對工作表(主要)B欄位及(次要)C欄位排序遞增
所錄製的巨集,看的眼花撩亂~~~
如何改寫才會更簡單易懂呢?


Sub Macro1()
'
' Macro1 Macro
' user 在 2013/1/15 錄製的巨集
''
    Range("A3").Select
    Range(Selection, Selection.End(xlToRight)).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Sort Key1:=Range("B3"), Order1:=xlAscending, Key2:=Range("C3") _
        , Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
        False, Orientation:=xlTopToBottom, SortMethod:=xlPinYin, DataOption1:= _
        xlSortNormal, DataOption2:=xlSortNormal
    Range("H3").Select
End Sub

回復 1# alltest


    sorry~忘了附上圖片

TOP

回復 2# alltest


    你的MS Office 是2003 還是2007
印象中 MS Office 沒XP..

  多做多想多學習,少看少錯少迷途

  多做=多多練習,多多編寫。
  多想=想想為什麼人家程式要那樣寫,如果換成自己,又會怎寫。
  多學習=學習人家的發問並解答,學習人家的寫法

  少看=只看不做也枉然

TOP

回復 2# alltest
這樣的程式碼其實是最容易了解的
錄製的代碼是將你所做的動作一一轉譯成VBA程式碼
至於你覺得眼花撩亂是因為Sort方法本來就有這麼多參數
原本可以寫成一行的程式碼,但因為考慮閱讀版面所以會以空格+下標線作為分行處理
你要學VBA就要從各個參數說明去了解每個參數的作用
這些參數是你在排序對話方塊中的設定,試著錄製不同的設定動作
比較每次錄製的程式碼差異,有助於你對VBA與法的認識
學海無涯_不恥下問

TOP

謝謝Hsieh 超級版主大大的不吝指教~感恩^^
讓初學的我,有個更好的學習方向
希望有一天也能成為VBA高手

TOP

回復 3# mark15jill


    sorry~是 2003

TOP

        靜思自在 : 修行要繫緣修心,藉事練心,隨處養心。
返回列表 上一主題