|
Sortを使っては如何でしょうか?
対象の範囲の左に作業用(Sort時のキーに使う)列を用意し、
その列でSortした時に、空白セルが下方に纏まるような状態を作り出します。
以下が例です。
解読してみて下さい。
Sub sample()
Dim r As Range, c As Range
Set r = Range("A1:A8")
r.EntireColumn.Insert xlShiftToRight
With r.Offset(, -1)
.Item(1).Value = 1
.DataSeries
' For Each c In r
' If IsEmpty(c) Then c.Offset(, -1).ClearContents
' Next
On Error Resume Next
r.SpecialCells(xlCellTypeBlanks).Offset(, -1).ClearContents
On Error GoTo 0
.Resize(, 2).Sort Key1:=.Columns(1), Order1:=xlAscending, _
Header:=xlNo, Orientation:=xlTopToBottom
.EntireColumn.Delete xlShiftToLeft
End With
End Sub
|
|