• ベストアンサー

マクロでの並び替え

V列の2行目からDATAが入っています。 DATAには、ブランク、L221、L222があります。 DATAの並び替えを下記のようにしたいのですが、 教えてください。   ブランク   L221   L222 マクロで記述したい。                

質問者が選んだベストアンサー

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.1

こんにちは。 以下のようには出来るけれども、あまり、難しいことは考えないほうがよいと思いますね。わけがわからなくなりますよ。自分の処理できる範囲内で、作ったほうがよいと思います。 Sub Main()   Dim a As Variant   '範囲の一番上のセルを選択   Set r = Range(ActiveCell, ActiveCell.End(xlDown))   'または、 Set r = Selection '範囲選択   ReDim a(1 To r.Count)   For i = 1 To r.Count    a(i) = r.Cells(i, 1).Value   Next i   ReDim Preserve a(1 To r.Count)   Babble_SortR a   r.Value = Application.Transpose(a) End Sub Sub Babble_SortR(a) 'バブルソートメソッド  Dim u As Long  Dim i As Long  Dim j As Long  Dim t As Variant  u = UBound(a)  i = LBound(a)  Do While i < u   j = u   Do While j > i    If a(j) < a(i) Then '昇順     t = a(j)     a(j) = a(i)     a(i) = t    End If    j = j - 1   Loop   i = i + 1  Loop End Sub

関連するQ&A