TExcelWorksheet 中的 Sort Method 不懂運用﹗ |
答題得分者是:yching
|
hmlam
一般會員 ![]() ![]() 發表:21 回覆:8 積分:5 註冊:2003-03-27 發送簡訊給我 |
|
cmf
尊榮會員 ![]() ![]() ![]() ![]() ![]() 發表:84 回覆:918 積分:1032 註冊:2002-06-26 發送簡訊給我 |
expression.Sort(Key1, Order1, Key2, Type, Order2, Key3, Order3, Header, OrderCustom, MatchCase, Orientation, Sort方法, DataOption1, DataOption2, DataOption3) expression 必選的。一個傳回 [套用至] 清單中某一個物件的運算式。 Key1 選擇性的 Variant 資料型態。第一個排序欄位,可用文字 (樞紐分析表欄位或範圍名稱) 或 Range 物件指定 (例如 Dept 或 Cells(1, 1))。 Order1 選擇性的 XlSortOrder 資料型態。Key1 中所指定欄位或範圍的排序順序。 XlSortOrder 可以是 XlSortOrder 的常數之一。
xlDescending。以遞減順序排序 Key1。
xlAscending 預設值。以遞增順序排序 Key1。 Key2 選擇性的 Variant 資料型態。第二個排序欄位,可用文字 (樞紐分析表欄位或範圍名稱) 或 Range 物件指定。如果省略此引數,則沒有第二個排序欄位。 排序樞紐分析表報表時無法使用此引數。 Type 選擇性的 Variant 資料型態。指定參與排序的元素。只有當排序樞紐分析表報表時才使用此引數。 XlSortType 可以是這些 XlSortType 常數之一。
xlSortLabels。依標籤排序樞紐分析表報表。
xlSortValues。依值排序樞紐分析表報表。 Order2 選擇性的 XlSortOrder 資料型態。 Key2 中所指定欄位或範圍的排序順序。對樞紐分析表報表進行排序時不使用此引數。 XlSortOrder 可以是 XlSortOrder 的常數之一。
xlDescending。以遞減順序排序 Key2。
xlAscending 預設值。以遞增順序排序 Key2。 Key3 選擇性的 Variant 資料型態。第三個排序欄位,可用文字 (範圍名稱) 或 Range 物件指定。如果省略此引數,則沒有第三個排序欄位。 排序樞紐分析表報表時無法使用此引數。 Order3 選擇性的 XlSortOrder 資料型態。 Key3 中所指定欄位或範圍的排序順序。對樞紐分析表報表進行排序時不使用此引數。 XlSortOrder 可以是 XlSortOrder 的常數之一。
xlDescending。以遞減順序排序 Key3。
xlAscending 預設值。以遞增順序排序 Key3 Header 選擇性的 XlYesNoGuess 資料型態。 指定第一列是否包含標題。對樞紐分析表報表進行排序時不使用此引數。 XlYesNoGuess 可以是這些 XlYesNoGuess 常數之一。
xlGuess。讓 Microsoft Excel 判斷是否有標題及標題位於哪裡。
xlNo 預設值。(應排序整個範圍)。
xlYes。(不應排序整個範圍)。 OrderCustom 選擇性的 Variant 資料型態。此引數是以 1 為開始的整數偏移量,用以指定自訂排序順序的清單。如果您省略 OrderCustom,則使用一般排序。 MatchCase 選擇性的 Variant 資料型態。若指定為 True,則排序時大小寫視為相異;若指定為 False,則排序時不區分大小寫。對樞紐分析表報表進行排序時不使用此引數。 Orientation 選擇性的 XlSortOrientation 資料型態。 排序的方向。 XlSortOrientation 可以是這些 XlSortOrientation 常數之一。
xlSortRows 預設值。循列排序。
xlSortColumns。循欄排序。 Sort方法 選擇性的 XlSort方法 資料型態。 排序的類型。某些常數可能不適用,需視您選擇或安裝的語言支援而定 (例如,美國英語版本)。 XlSortMethod 可以是這些 XlSortMethod 常數之一。
xlStroke依各字元輸入的次數排序。
xlPinYin 預設值。字元的中文注音排序順序。 DataOption1 選擇性的 XlSortDataOption 資料型態。指定 key 1 中文字的排序方式。對樞紐分析表報表進行排序時不使用此引數。 XlSortDataOption 可以是 XlSortDataOption 的常數之一。
xlSortTextAsNumbers。排序中將文字視為數值。
xlSortNormal 預設值。分別排序數值及文字資料。 DataOption2 選擇性的 XlSortDataOption 資料型態。指定 key 2 中文字的排序方式。對樞紐分析表報表進行排序時不使用此引數。 XlSortDataOption 可以是 XlSortDataOption 的常數之一。
xlSortTextAsNumbers。排序中將文字視為數值。
xlSortNormal 預設值。分別排序數值及文字資料。 DataOption3 選擇性的 XlSortDataOption 資料型態。指定 key 3 中文字的排序方式。對樞紐分析表報表進行排序時不使用此引數。 XlSortDataOption 可以是 XlSortDataOption 的常數之一。
xlSortTextAsNumbers。排序中將文字視為數值。
xlSortNormal 預設值。分別排序數值及文字資料。 註解
每次您使用此方法時,特定工作表的 Header、Order1、Order2、Order3、OrderCustom 和 Orientation 的設定都將儲存。如果您下次呼叫此方法時沒有指定這些引數的值,則將使用上次所儲存的值。 如果您選擇不使用儲存的值,則每次使用 Sort 方法時請明確設定這些引數。 無法轉換成數值資料的文字字串,將依一般方式排序。 附註 如果 Sort 方法未定義任何引數,Microsoft Excel 將依遞增順序排序選定範圍。 範例
本範例對 Sheet1 上的範圍 A1:C20 進行排序,用儲存格 A1 作為第一排序鍵,用儲存格 B1 作為第二排序鍵。排序是循列以遞增順序進行的,不含標題。 此範例假設範圍 A1:C20 中有資料。 Sub SortRange1() Worksheets("Sheet1").Range("A1:C20").Sort _
Key1:=Worksheets("Sheet1").Range("A1"), _
Key2:=Worksheets("Sheet1").Range("B1") End Sub
此範例對 Sheet1 上含有儲存格 A1 的區域進行排序 (使用中的區域),這裡是按第一欄中的資料進行排序,並且如果有標題列的話,將自動使用標題列。此範例假設使用中區域中有資料,其中包括儲存格 A1。Sort 方法將自動判斷使用中的區域。 Sub SortRange2() Worksheets("Sheet1").Range("A1").Sort _
Key1:=Worksheets("Sheet1").Columns("A"), _
Header:=xlGuess End Sub
------
︿︿ |
hmlam
一般會員 ![]() ![]() 發表:21 回覆:8 積分:5 註冊:2003-03-27 發送簡訊給我 |
多謝詳細解釋,不過還是做不到﹗ My code: with ExWs.Cells do
begin
Item[1,1].Value:='A';
Item[2,1].Value:='B';
Item[3,1].Value:='C';
Item[1,2].Value:='aa';
Item[2,2].Value:='bb';
Item[3,2].Value:='cc';
Item[1,3].Value:=10;
Item[2,3].Value:=15;
Item[3,3].Value:=20;
end; ExWs.Range[ExWs.Cells.Item[1,1], ExWs.Cells.Item[3,3]].Sort(ExWs.Range[ExWs.Cells.Item[3,1], ExWs.Cells.Item[3,3]],
xlAscending, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, xlNo, EmptyParam, True, xlSortRows, xlPinYin, EmptyParam, EmptyParam, EmptyParam); 我只是想sort Item[3,1] to Item[3,3] 的column,不過有問題呀﹗
thx
|
yching
一般會員 ![]() ![]() 發表:6 回覆:22 積分:10 註冊:2007-03-23 發送簡訊給我 |
範例..
ExcelApp.Range['A1:X20'].Select; ExcelApp.Selection.Sort(Key1:=ExcelApp.Range['X1'], Order1:=xlAscending, Key2:=ExcelApp.Range['L1'] , Order2:=xlAscending, Key3:=ExcelApp.Range['O1'], Order3:=xlAscending, Header:= xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom); |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |