• ベストアンサー

エクセルのシート連番の振り直し

今、VBAを勉強中です。 あまりエクセルに詳しくないので教えてください。 エクセルを開くと、Sheet1、Sheet2、Sheet3が最初に出ますが 例えば、Sheet2、Sheet3を削除した場合 次からワークシートを挿入するとSheet4、Sheet5と 自動的にカウントアップしえ作られてしまいます。 Sheet1,4,5となってしまったものを Sheet1,2,3…と元のように番号を振り直す方法はありますでしょうか?

  • mmegg
  • お礼率86% (573/662)

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

>あまりエクセルに詳しくないので エクセルにも詳しくないだろうが、VBAにも詳しくないようだ。 一般に言うエクセルの問題ではなく、VBAの問題でしょう。 シートタブのうえに見えているものはシート名だ。これはマウスで位置を変えられる。この順序はIndex番号で捉えられる。 ーー 新しいシート名はどのように順番を振りたいのか。今の左からの順序で、Sheet1、Sheet2のようにサブ番号的に振ればよいのか。この点しっかり書くこと。 ーー Sub test01() For i = 0 To Sheets.Count - 1 Sheets(i + 1).Name = "東京" & Trim(Str(i + 1)) MsgBox Sheets(i + 1).Name Next i End Sub を実行すつと、東京1,東京2・・になる == その後下記をやると Sub test02() MsgBox Sheet2.Name End Sub 東京2と出る。 この辺のカラクリは難しいところ。

mmegg
質問者

お礼

やってみました!理想通りに変わりました。 ずばり、これがやりたかったことなので、スッキリ解決できました。 ありがとうございます!

その他の回答 (2)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.2

 それと、一度ファイルを閉じてから再度開くと、最も番号の大きなシート名以降から、カウントアップが再開されるようになります。  例えば、Sheet1,4,5となっ後で、回答番号:No.1 の方法で、Sheet1,2,3に修正しただけでは、次に作られるシート名は、Sheet6になります。  これが、Sheet1,2,3に修正した後、一度ファイルを閉じてから再度開くと、Sheet4から作られるようになります。

mmegg
質問者

お礼

やってみましたところできました。 保存すると、シート番号の情報をリセットすることがわかり勉強になりました。 ありがとうございます!

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.1

>Sheet1,4,5となってしまったものを Sheet1,2,3に修正するだけでしたら、 修正するシート名を右クリックし   ↓ 現れたBOXの[名前の変更]を選択   ↓ シート名を変更   ↓  Enter という操作で、シート名を変更出来ます。

関連するQ&A

  • EXCELで切り取った行を別シートに挿入

    EXCELである行を選択して切り取り、同一シート内の任意の場所に挿入すると 元の行は自動的に削除されます。 しかし、別シートに挿入した時は、元の行は削除されず、わざわざ その行を削除する、という操作が必要となります。 そこで質問なのですが、別シートへの挿入を一つの操作で行う方法はないでしょうか? また、その方法がない場合、それはEXCELの何らかの仕様を反映しているのだと 思いますが、それはどのようなものでしょうか? よろしくお願いします。

  • エクセルの単数ワークシートについて

    下記の問題で躓いています、ご教授お願いします。 エクセルの単数ワークシートの説明で、次のうち誤っているのはどれか 1.ワークシートのコピーができる。 2.ワークシートのシート名を変更できる 3.ひとつのワークシートだけ削除できる 4.新規のワークシートを挿入できる

  • VBAを使用し、自動でシートごとに連番を入れる方法

    Excel2003のVBAを使用し、自動でシートごとに連番を入れる方法を教えて下さい。 P0911~ P0950までとか番号が自由に設定出来て、尚且つ、最初の番号に入っているエクセルデータが最後の番号まで同じ内容で導入されているのが望ましいです。 どなたか、ご教示頂けると大変助かります。

  • エクセルでワークシートを消した・・・・

    無理なんですかねー 非常に困った失敗をしました。 たくさんのワークシートのあるエクセルファイルの ワークシートを消して・・・ 上書きしてしまいました。 復旧させる方法はないでしょうか? エクセル2003です。 エクセルの2000までであれば、ワークシートを消す際に「一度削除すると元に戻すことはできません」と表示されますが、 2003だと表示されないので、もしかして・・・とかすかな希望をもって書いてます。 めちゃくちゃこまってます。 教えてくださいm(_ _)m

  • エクセル2010で違うブック間で連番をふりたいです

    初めて質問します。 エクセル2010を使っていますが、一つのブックに見積書、注文書などをシートごとに 作成しそれを注文番号で、わかるようにしたいと思っています。 一個の注文が終わると、そのブックをコピーしてコピーしたブックをまた次の注文に 使いたいのですが注文番号を自動で連番をふる設定がどうしてもわかりません。 ※ブック1を開いたら注文書セルに0001 ブック1をコピーして開いたら注文書セルに 0002という感じです。 シート間ではなく、違うブックをコピーして使い開いたときに連番になる設定はできるのでしょうか? VBAやマクロはまったくわかりません。 なにかいい方法があれば教えて下さい。

  • Excelシート内に?

    以前作成したEXCELのワークシートをEXCEL2010で開いたら中に全く同じシートが上下に分かれて出来ていました。(いわゆる分割表示とは違います)これが出来てしまった原因は何でしょう。自分は記憶ありません。 一応このBOOKに新しいワークシートを挿入し問題のシートにある中身を 新しいBOOKにコピーし問題のワークシートは削除して問題は解決しましたが今後の参考のために出来てしまった原因と修正方法がありましたら教えてください。

  • Excelの連番をふりなおす

    Excelの表で、A列に連番をつけてあります。 行を挿入したり、削除したときに、連番がくずれないように 自動的にふりなおす方法があれば、教えていただけないでしょうか。 ヨロシクお願いします!!!

  • Excel-VBAで新しいシート挿入直後にシートの名前を変更する。

    お世話になります。 Excel-VBAで、Sheets.Addメソッドで、sheetを挿入すると、都度sheet1とかsheet2とか、何回目のシート挿入を実行したのかによって勝手にsheet番号を振ってワークシートが出来ると思いますが、挿入直後にシートの名前を変更するのはどういうコードを書けば良いのでしょうか?

  • excelのセル参照

    vba初心者です。 excelのvbaでセル範囲(rangeなど)を指定して数値の入力や参照をしますが vbaを使わずに元のワークシート側で行・列の挿入、削除した場合 vbaにはその分反映されません。(当然ですが) Range("C3:D4")の場合、B列に列を挿入したらRange("D3:E4") となるような。 vbaの修正を最小限に抑える簡単で良い方法はありますか。

  • エクセル97連番伝票マクロを作りたい§^。^§

    特定のセルに自動カウント(連番)をつくり通し番号 にして伝票にしたいのですが・・・ (1)元ファイルの番号に+1をする。 (2)そのシートを選択ごコピーする (3)新しいシートに貼り付ける (4)その番号で保存する (5)古い最初のシートをとじる (6)印刷設定を保持したまま追加編集し保存する。 以上の繰り返し操作を自動化したい・・・が 書式設定がA4サイズになってしまい いちいち設定の変更をしなければならず困っている。 よろしくお願いします。 ※以上質問内容にマクロを貼り付け複数に分けて質問したのですが=ルール違反でした(ーー;) 補足としての記載は、OK と言うことですので、よろしくおねがいします

専門家に質問してみよう