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

シート名a~zの26シートを、z~aの順に一括で並び替える方法を教えて下さい!

A 回答 (2件)

マクロ処理になります。


[Alt]+[F11] で VB Editor を開き、標準モジュールを挿入して下記をコピペして実行します。
昇順に並べるときは、5行目の不等号を左開きにします。

Sub SheetsSort()
Dim i As Integer, ii As Integer
For ii = 1 To Sheets.Count - 1
For i = ii + 1 To Sheets.Count
If Sheets(ii).Name < Sheets(i).Name Then
Sheets(i).Move Before:=Sheets(ii)
End If
Next
Next
End Sub
    • good
    • 0
この回答へのお礼

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

お礼日時:2004/07/05 16:20

マクロでできます。


マクロに
Sub Macro1()
'
Dim i As Integer
Dim j As Integer
Dim iAnswer As VbMsgBoxResult

iAnswer = MsgBox("シートの並べ換えをしますか?" & Chr(10) _
& "はいをクリックすると実行", _
vbYesNoCancel + vbQuestion + vbDefaultButton1, "Sort Worksheets")
For i = 1 To Sheets.Count
For j = 1 To Sheets.Count - 1

If iAnswer = vbYes Then
If UCase$(Sheets(j).Name) < UCase$(Sheets(j + 1).Name) Then
Sheets(j).Move After:=Sheets(j + 1)
End If

ElseIf iAnswer = vbNo Then
If UCase$(Sheets(j).Name) > UCase$(Sheets(j + 1).Name) Then
Sheets(j).Move After:=Sheets(j + 1)
End If
End If
Next j
Next i


End Sub

このマクロを記述し実行すればa~zのシートをz~aに並び替えできます。
    • good
    • 0
この回答へのお礼

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

お礼日時:2004/07/05 16:19

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