
No.1ベストアンサー
- 回答日時:
シート1を作業用シートとして使います。
漢字が含まれていたら読みの順番には並び替えてくれません。
なお、このマクロは私が作ったものではなく、他サイトで回答
されていたものを勉強のため保存していたものです。
Sub test()
Dim WS As Worksheet
Dim i As Integer
Dim MyC As Range
Set WS = Worksheets.Add(After:=Worksheets(Worksheets.Count))
With WS
For i = 1 To Worksheets.Count - 1
.Cells(i, 1).Value = Worksheets(i).Name
Next
With .Range("A1").CurrentRegion
.Sort Key1:=.Parent.Range("A1"), Order1:=xlAscending, Header:=xlNo
For Each MyC In .Cells
Worksheets(MyC.Value).Move After:=Worksheets(Worksheets.Count)
Next
End With
Application.DisplayAlerts = False
.Delete
Application.DisplayAlerts = True
End With
End Sub
No.4
- 回答日時:
直接の回答ではないのですが、
わかりやすく操作したい、というだけでしたら、先頭に一枚、目次でも入れてみたらいかがでしょうか?
やっぱりマクロを使うのですが、以下のマクロで、一枚目以外のシートへのリンクを作成できます。
後は #3さんの書いてるように、好きな並び順にしてしまえば比較的使いやすいのではないかと思います。
--
Sub MakeIndex()
For i = 1 To Worksheets.Count - 1
ActiveSheet.Hyperlinks.Add Anchor:= _
ActiveCell.Cells(i, 1), _
Address:="", _
SubAddress:=Worksheets(i + 1).Name & "!A1", _
TextToDisplay:=Worksheets(i + 1).Name
Next
End Sub
この回答へのお礼
お礼日時:2005/06/04 09:48
回答ありがとうございました。マクロ…。使った事が無いんですよね。。。また別の整理方法を考えてみます。どうもありがとうございました。
No.3
- 回答日時:
Sub test02()
Dim sh As Worksheet
i = 1
For Each sh In ActiveWorkbook.Worksheets
Worksheets("sheet4").Cells(i, "A") = sh.Name
i = i + 1
Next
End Sub
1つシートを追加します。その名前を上記ではSheet4としてます。
上記でSheet4のA列に、シート名の一覧が出ます。
ソートをプログラムで行うのは面倒なので、エクセルを利用して、Sheet4のA列を昇順にソートしてください。もし漢字名、」英字名で並び順が気に食わない場合は
B列に振り仮名等を振って、B列でソートしてください。(膨大な数とのことですが、振り仮名を振るのはできるかな。)
それに対して
Sub test03()
m = Worksheets("sheet4").Cells(1, "A")
For i = 2 To 4
n = Worksheets("sheet4").Cells(i, "A")
Worksheets(n).Move , Worksheets(m)
m = n
Next i
End Sub
を実行します。
しぇえt4のA列のA列のシート名の順にシートタブを並べます。2つに分け、ソートを手作業にすることにより、少しVBAコードは簡単になったでしょう。
No.2
- 回答日時:
こんにちは。
多分マクロを使わないとダメかと思います。私は、(1)、(2)、(3)‥(10)‥(20)‥ とシート名を付ける習慣がありまして、
下記のように、シート名を文字扱いし、文字数も比較して、
(1)、(10)、(2)、(20)、(3)‥とならないようにしてます。
Dim r As Long
Dim shtTemp As Worksheet
With Application
.ScreenUpdating = False
.DisplayAlerts = False
End With
Set shtTemp = Worksheets.Add(Before:=Worksheets(1))
With shtTemp
For r = 1 To Worksheets.Count
.Cells(r, 1) = "'" & Worksheets(r).Name
.Cells(r, 2) = Len(Worksheets(r).Name)
Next
.Cells(1, 1).Sort _
Key1:=.Columns(2), Order1:=xlDescending, _
Key2:=.Columns(1), Order2:=xlDescending, _
Header:=xlYes
For r = 2 To .Cells(1, 1).CurrentRegion.Rows.Count
Worksheets(CStr(.Cells(r, 1))).Move Before:=Worksheets(1)
Next
.Delete
End With
この回答へのお礼
お礼日時:2005/06/04 09:46
ECXELの単純操作で整列できるのかな?と思っていたのですが、残念。マクロは全く手が出せないので、また別の整理方法を考えてみます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロで対象ごとにシート分けしてその内容をセルに書き込みたい 9 2022/08/24 13:23
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Excel(エクセル) Excel、同じフォルダ内のExcelファイルの特定シートのみを1つのファイルに集約したい 8 2022/09/07 15:12
- Excel(エクセル) マクロか関数で処理したいのですが、教えて頂けませんか。 8 2022/10/31 15:18
- Excel(エクセル) Excelで、別シートの表のステータスに伴った動的な自動転記をしたいです。 2 2023/06/14 15:56
- Visual Basic(VBA) excelにて、特定の列に数字入力してあれば、入力してある行コピーして 別ファイルに張り付ける 2 2022/08/11 05:33
- Excel(エクセル) 請求書と領収書の作成 4 2022/11/10 16:13
- Excel(エクセル) Excel 計算式を教えて下さい 3 2022/12/15 19:46
- Excel(エクセル) 【Excel関数】値が合致するセルの隣のセルを表示させたい 8 2022/10/12 17:44
- Excel(エクセル) Excelについて 1 2023/03/06 10:26
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの保護で、列の表示や...
-
ExcelのVlookup関数の制限について
-
文字の色も参照 VLOOKUP
-
Excelのセルの色を変えた行(す...
-
VBAで繰り返しコピーしながら下...
-
Excelでの並べ替えを全シートま...
-
エクセルで横並びの複数データ...
-
【VBA】複数のシートの指定した...
-
Excelに自動で行の増減をしたい...
-
エクセル マクロ 標準モジュー...
-
エクセルで、book全体の検索&...
-
エクセルで、チェックボックス...
-
VLOOKアップ関数の結果の...
-
SUMPRODUCTにて別シートのデー...
-
【エクセル】1列のデータを交...
-
【条件付き書式】countifsで複...
-
Excel の複数シートの列幅を同...
-
【VBA】シート名と見出しが一致...
-
Excel VBA ピボットテーブルに...
-
エクセルVBA 行追加時に自...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ExcelのVlookup関数の制限について
-
エクセルの保護で、列の表示や...
-
文字の色も参照 VLOOKUP
-
Excel の複数シートの列幅を同...
-
Excelでの並べ替えを全シートま...
-
VBAで繰り返しコピーしながら下...
-
【条件付き書式】countifsで複...
-
Excelのセルの色を変えた行(す...
-
エクセルで、チェックボックス...
-
エクセルの列の限界は255列以上...
-
VLOOKアップ関数の結果の...
-
Excelに自動で行の増減をしたい...
-
エクセル マクロ 標準モジュー...
-
【VBA】複数のシートの指定した...
-
Excel VBA ピボットテーブルに...
-
エクセルで横並びの複数データ...
-
【VBA】シート名と見出しが一致...
-
Excel 2段組み
-
SUMPRODUCTにて別シートのデー...
-
スプレッドシートでindexとIMPO...
おすすめ情報