プロが教えるわが家の防犯対策術!

いつも大変お世話になっております。

複数の表を一気に並び替えしたいと思っています。
条件はいたって簡単で、
C列に1~の数値が記入されています。

A B C
あ 12 1 
い 15 3
う 13 2

え 15 2
お 12 1

かき 16 2
く  17 1

  ↓

A B C
あ 12 1 
う 13 2
い 15 3

お 12 1
え 15 2

く  17 1
かき 16 2

データが入力されている最終行まで、
繰り返し並び替えを行いたいです。

回答よろしくお願いいたします。

A 回答 (2件)

こんにちは!


一例です。

データはA1セルからあり、空白セルまでを一塊としています。

Sub Sample1()
Dim i As Long, k As Long
For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
If Cells(i, "A") <> "" Then
k = i
Do While Cells(k, "A") <> ""
k = k + 1
Loop
Cells(i, "A").CurrentRegion.Sort key1:=Cells(i, "C"), order1:=xlAscending, Header:=xlNo
i = k
End If
Next i
End Sub

こんな感じではどうでしょうか?m(_ _)m
    • good
    • 1
この回答へのお礼

回答ありがとうございました!
思っていた通りの動作をしました!

お礼日時:2013/12/06 13:37

この位ならVBAを使わなくとも、D1に↓と入れて下までコピーしD列をキーに並び替えては?


=COUNTIF(C$1:C1,"")*(1+MAX(C:C))+C1

この回答への補足

C列に並び替えるNoが書いてあります。
C列をキーに並び替えます。

補足日時:2013/12/06 13:03
    • good
    • 0

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