0

データ (文字列) を水平方向に並べ替えたいのですが、各行を他の行とは別に並べ替えたいと考えています。

それを行う唯一の方法は、各行を手動で選択して並べ替えることですか?

私はまったく VBA の専門家ではありません。C# または Java でそれを行うことができますが、この関数が Excel に存在することを願っています ...

ありがとうございました!

4

1 に答える 1

1

これは、最後の行の列 A にデータがあると仮定した場合の VBA です。

Sub Macro1()
Dim lLastRow As Long, lLoop As Long

lLastRow = Cells(Rows.Count, 1).End(xlUp).Row

'turn off updates to speed up code execution
With Application
    .ScreenUpdating = False
    .EnableEvents = False
    .Calculation = xlCalculationManual
    .DisplayAlerts = False
End With


For lLoop = 1 To lLastRow


Rows(lLoop).Sort key1:=Cells(lLoop, 1), order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
                    False, Orientation:=xlLeftToRight, DataOption1:=xlSortNormal, DataOption2 _
                    :=xlSortNormal


Next

With Application
    .ScreenUpdating = True
    .EnableEvents = True
    .Calculation = xlCalculationAutomatic
    .DisplayAlerts = True
End With


End Sub
于 2012-10-25T22:41:42.903 に答える