シート名を置換できればいいのになぁ
と思ったことありませんか?
これ、マクロを使えばできます!
アイコン名を入力
はじめまして、さかいと申します。
インスタで『自動化オタクの仕事術』を紹介している自分が解説させていただきます!
マクロを作る前の準備
まず、マクロを作成するために準備をしていきます
Excelファイルの上にあるツールバーに
「開発」タブを表示させます
既に表示している方は2 マクロを作るにジャンプしていただいてOKです
開発タブを表示
①ツールバーの上で右クリック
②「リボンのユーザー設定」を選択
すると、Excelのオプションが開きます
③「開発」にチェックをつけてOKをクリック
ツールバーに「開発」タブが表示されます。
これで準備完了です!
お疲れさまです!これでマクロを作ることができます!
早速マクロを作成していきましょう。
マクロを作る
①VBEを起動
「開発」タブから「Visual Basic」をクリック
または「Alt + F11」でもOKです
以下の画面が表示されます
②プロジェクトから標準モジュールを挿入
プロジェクト→挿入→標準モジュールをクリック
標準モジュールが表示されるとOKです
③Module1に以下のコードを貼り付け
Sub SheetRename()
Dim ws As Worksheet
'置換前のシート名を宣言
Dim before As String
'置換後のシート名を宣言
Dim after As String
'置換前を入力
before = Application.InputBox("置換前", "シート名置換", Type:=2)
If before = "False" Then Exit Sub
'置換後を入力
after = Application.InputBox("置換後", "シート名置換", Type:=2)
If after = "False" Then Exit Sub
'全シート名を置換
For Each ws In ActiveWorkbook.Worksheets
'エラーの場合、次のシート
On Error Resume Next
'置換を実施
ws.Name = Replace(ws.Name, before, after)
Next ws
'メッセージ表示
MsgBox "置換終了!"
End Sub
これでマクロの完成です!
④マクロの実行
2022年○月を2023年○月に置換します
▶︎(実行ボタン)をクリック
置換前の入力ボックスが表示
置換前の文字(2022)を入力し、OKをクリック
次に置換後の入力ボックスが表示
置換後の文字(2023)を入力し、OKをクリック
メッセージが表示されると、置換完了です!
まとめ
ここまでお疲れさまでした。
今回はシート名の一括置換のマクロについて説明させていただきました。
シート名を1つ1つ変えるのは意外と大変なので、ぜひこれを使ってみてください!