プロが教える店舗&オフィスのセキュリティ対策術

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

マクロで記述したい。
               

A 回答 (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
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!