ここから本文です

解決済みのQ&A

エクセルで、シート名の一括編集はできますか。 例えば、シート名「田中A、田中B...

iituakさん

エクセルで、シート名の一括編集はできますか。
例えば、シート名「田中A、田中B、…」を、「高橋A、高橋B、…」に変更したいのですが。

効率良く変換できる方法があれば、教えてください。

  • 質問日時:
    2008/2/20 16:48:52
  • 解決日時:
    2008/2/21 14:22:16
  • 閲覧数:
    32,719
    回答数:
    3

ベストアンサーに選ばれた回答

vcx000xcvさん

効率よくならマクロですね。

ALT+F11キーでVBE画面を開き、挿入-標準モジュールで出てきたモジュールにコピペ
VBE画面を閉じてツール-マクロ-マクロ-Test
セキュリティでマクロ有効にしてないと動きません。

Sub Test()
Dim ws As Worksheet, myFind As String, myReplace As String
myFind = Application.InputBox("検索文字列は?", "シート名置換", Type:=2)
myReplace = Application.InputBox("置換文字列は?", "シート名置換", Type:=2)
For Each ws In ActiveWorkbook.Worksheets
On Error Resume Next
ws.Name = Replace(ws.Name, myFind, myReplace, 1, -1, 2)
Next ws
End Sub

質問した人からのお礼

  • 感謝あっという間にできました!!ありがとうございます!!
  • コメント日時:2008/2/21 14:22:16

グレード

ベストアンサー以外の回答

(2件中1〜2件)

並べ替え:回答日時の
新しい順
古い順

 

sp15xさん

一括で変更するにはマクロを組む必要がありますね。
シート名を取得するマクロで全シートのシート名を特定シートのセルに書き出し、その後そのセルの値を置換などで変更し
シート名を変更するマクロを起動してシート名を変更するという作業になるのではないかと思います。
シート名の取得や変更は下記URLが参考になると思います。
http://www.happy500z.com/YNxv202.html#3

マクロではなく、一つずつ変更する時の効率を上げたいのであれば、
最初のシートは「田中」を消して「高橋」に変更しますが、そのときに「高橋」の文字をドラッグして反転させ、
「ctrl」キー+「c」キーでクリップボードに「高橋」をコピーしておきます。
2枚目以降のシートでは、シート名をダブルクリックした後、「田中」の文字だけドラッグして反転させておいて、
「ctrl」キー+「v」キーでクリップボードの「高橋」を貼り付ければ、いちいち文字を打ち込まなくて良いので
作業効率は向上します。

kuresonmanさん

Alt + F11キーを押すと、VBEの画面が表示される。
左側の下半分にプロパティウィンドウが表示されていない場合は
表示→プロパティウインドウをクリックする。
左上のエクセルブックを展開してシートを選択すると、プロパティウィンドウにプロパティリスト表示される。
ここのNameプロパティを変更する・・・・・手はどうですか?
終われば、右上の×で閉じる。

Q&Aをキーワードで検索:

総合Q&Aランキング

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。

知恵コレに追加する

閉じる

知恵コレクションをするID/ニックネームを選択し、「追加する」ボタンを押してください。
※知恵コレクションに追加された質問や知恵ノートは選択されたID/ニックネームのMy知恵袋で確認できます。

ほかのID/ニックネームで利用登録する