Board logo

標題: 橫向排序問題 [打印本頁]

作者: pcwh3    時間: 2012-2-14 23:14     標題: 橫向排序問題

直向排序在EXCEL中已有排序選項功能。
但是,我想進行橫向順序排序, 例如:
A1=6、B1=19、C1=2、D1=5,排成: A1=2、B1=5、C1=6、D1=19,
A2=52、B2=19、C2=7、D2=16、E2=1,橫向順序排成:1、7、16、19、52
應如何用VBA處理?
作者: register313    時間: 2012-2-14 23:52

回復 1# pcwh3
  1. Sub SORT()
  2. Dim ARR()
  3. R = 1
  4. Do Until Cells(R, "A") = ""
  5.    LastC = Cells(R, 256).End(xlToLeft).Column
  6.    ReDim ARR(LastC)
  7.    For C = 1 To LastC
  8.      ARR(C) = WorksheetFunction.Small(Range("A" & R).Resize(1, LastC), C)
  9.    Next C
  10.    For C = 1 To LastC
  11.      Cells(R, C) = ARR(C)
  12.    Next C
  13.    R = R + 1
  14. Loop
  15. End Sub
複製代碼

作者: Hsieh    時間: 2012-2-15 00:35

回復 1# pcwh3

[attach]9585[/attach]
作者: wang    時間: 2012-2-15 00:56

本帖最後由 wang 於 2012-2-15 01:27 編輯

橫向排序
資料>排序>選項>方向>循列排序

R = 1
Do Until Cells(R, 1) = ""
    Range(Cells(R, 1), Cells(R, 1).End(xlToRight)).Select
    Selection.SORT Key1:=Cells(R, 1), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight, SortMethod _
        :=xlStroke, DataOption1:=xlSortNormal
        R = R + 1
Loop
Cells(R, 1).Select
作者: pcwh3    時間: 2012-2-15 11:46

回復 4# wang

多謝各位幫忙, 了解一二了.

請問如果格式如附件所示,我要將G6起至AR200(暫定)範圍進行橫向順序排列,範圍之內一定會有空格出現的。
我不想逐行逐行用人手改動, VBA可以做到嗎?應如何寫法?
謝謝.
[attach]9595[/attach]
作者: register313    時間: 2012-2-15 12:14

回復 5# pcwh3
  1. Sub SORT()
  2. For R = 6 To [A65536].End(xlUp).Row
  3.     If Cells(R, "G") <> "" Then
  4.        Range(Cells(R, "G"), Cells(R, "G").End(xlToRight)).Select
  5.        Selection.SORT Key1:=Cells(R, "G"), Order1:=xlAscending, Header:=xlGuess, _
  6.          OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight, SortMethod _
  7.          :=xlStroke, DataOption1:=xlSortNormal
  8.        R = R + 1
  9.     End If
  10. Next R
  11. End Sub
複製代碼

作者: pcwh3    時間: 2012-2-15 12:46

回復 6# register313
多謝幫忙, 正是我想要的.
作者: a23105    時間: 2014-12-15 10:07

EXCEL橫向排序,排序完畢後,會出現空格,無法達到真正的橫向排序。
我有1萬筆資料,想要做到橫向排序,不知道是否有大大可以協助的。
用VBA做到這個功能。




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)