返回列表 上一主題 發帖

執行VBA上的問題(sorting不完全)

回復 1# m09903020
  1. Option Explicit
  2. Sub sorting_order()
  3. Dim temp As Integer, i As Integer, y As Integer, j As Integer
  4. For i = 2 To 4
  5. For y = 7 To 9              '*****  有有4欄 要跑3 次   ****
  6. For j = 7 To 9               '原本有4欄  第4欄不必跑
  7.    'For j = 7 To 10
  8. If (Worksheets("Sheet1").Cells(i, j).Value > Worksheets("Sheet1").Cells(i, j + 1).Value) Then
  9.    'If j < 10 Then
  10.     temp = Worksheets("Sheet1").Cells(i, j + 1).Value
  11.     Worksheets("Sheet1").Cells(i, j + 1).Value = Worksheets("Sheet1").Cells(i, j).Value
  12.      Worksheets("Sheet1").Cells(i, j).Value = temp
  13.      'End If
  14. End If
  15. Next
  16. Next
  17. Next
  18. End Sub

  19. Sub Ex()
  20. Dim temp As Integer, i As Integer, y As Integer, j As Integer, Ar
  21.     For i = 2 To 4
  22.         Ar = Application.Transpose(Application.Transpose(Range(Cells(i, 7), Cells(i, 10)).Value))
  23.         '將 整列的數值轉至再轉至(為一維陣列) 導入 陣列
  24.        '工作表函數 Small 可在一維陣列中傳回 指定排序第幾個的  最小值  
  25.         For y = 7 To 10
  26.            Cells(i, y) = Application.Small(Ar, y - 6)  '將 陣列 值由最小開始排列
  27.         Next
  28.     Next
  29. End Sub
複製代碼

TOP

回復 2# register313
  1. Sub sorting_order()
  2.     Dim G As Range
  3.     For Each G In Range([G2], [G2].End(xlDown)).CurrentRegion.Rows
  4.         G.Sort Key1:=G, Order1:=xlAscending, Header:=xlGuess, Orientation:=xlLeftToRight
  5.     Next
  6. End Sub
複製代碼

TOP

        靜思自在 : 有多少力量就做多少事,不要心存等待,等待才會落空。
返回列表 上一主題