• ベストアンサー

エクセルのシートの名前をオートフィルする方法

エクセルのシートが「Sheet1」となっていますが、「1月」と名前を変えて、オートフィルなどで、「Sheet2」以降を「2月」「3月」「4月」・・・というように名前を自動でつけて増やすことは出来ないのでしょうか?オートフィルでなくても、設定などであらかじめ新規に開くと「Sheet1」ではなく「1月」「2月」「3月」「4月」・・・とすることでもかまわないのですが。どなたか知っている方がいらっしゃいましたらよろしくお願いします。

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

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

オートフィルはセルの値だけのものです。 普通の操作では、できないでしょう。 VBAで Sheet1のA1以下に、オートフィルで 06年1月 06年2月 06年3月 06年4月 06年5月 ・・・ を作る。 標準モジュールに下記を貼り付けて実行。 Sub test01() d = Range("A65536").End(xlUp).Row For i = 1 To d MsgBox Worksheets("Sheet1").Cells(i, "A") Worksheets.Add.Name = Worksheets("Sheet1").Cells(i, "A") Next i End Sub 06年1月以下のシートができます。 コピーして、Sheet2と同じ様式のものを作るなら Sub test02() d = Range("A65536").End(xlUp).Row For i = 1 To d MsgBox Worksheets("Sheet1").Cells(i, "A") Worksheets("Sheet2").Copy After:=ActiveSheet ActiveSheet.Name = Worksheets("Sheet1").Cells(i, "A") Next i End Sub

その他の回答 (2)

  • toshi_2000
  • ベストアンサー率30% (306/1002)
回答No.2

No1.です。 10月以降対応版です。(シートを追加すると自動でシート名がつきます) Private Sub Workbook_NewSheet(ByVal Sh As Object) If Mid(Sheets(Sheets.Count).Name, 2, 2) = "月" Then LASTNAME = Left(Sheets(Sheets.Count).Name, 1) Else LASTNAME = Left(Sheets(Sheets.Count).Name, 2) End If ActiveSheet.Name = (LASTNAME + 1) & "月" Sheets(ActiveSheet.Name).Move After:=Sheets(Sheets.Count) End Sub

  • toshi_2000
  • ベストアンサー率30% (306/1002)
回答No.1

すでに"1月"というシートがある場合、次のようになります。 Workbookにマクロを割り当ててください。(10月までしか対応していません) Private Sub Workbook_NewSheet(ByVal Sh As Object) LASTNAME = Left(Sheets(Sheets.Count).Name, 1) ActiveSheet.Name = (LASTNAME + 1) & "月" Sheets(ActiveSheet.Name).Move After:=Sheets(Sheets.Count) End Sub

関連するQ&A

  • Excel sheetよってオートフィル出来ない

    こんにちは。 Excelのオートフィルについて質問です。 あるBookのsheetによってはオートフィルが出来ず、 ホーム→フィル→連続データの作成がクリック出来ない状態になっており、 フィルハンドルも出ません。 ファイル→オプション→詳細設定→編集設定の所で 1.フィル ハンドル及びセルのドラック… 2.セルを上書きする前に… にはチェックが入っています。 原因と解決が分からないのですが、どなたかお分かりになる方いらっしゃいますか? 宜しくお願い致します。

  • オートフィル機能について (エクセル2007)

    オートフィル機能について (エクセル2007) sheet1のデータをsheet2に連動させたいのですが、 (sheet1)A1=(sheet2)A1 (sheet1)A31=(sheet2)A2 (sheet1)A61=(sheet2)A3 というように sheet1は30行毎でsheet2は1行毎に設定したいと思っています。 sheet2でオートフィル機能を使うことができますでしょうか? sheet1は全部で1000行あるのでひとつずつ設定するのが大変です。 アドバイスよろしくお願いします。

  • エクセルのオートフィルで

    excel97 を使っています。簡単なオートフィルの使い方について教えて下さい。 シート1のA1~A?(いくつあるかわからない) にある文字列を、シート2のA1にだけ「='シート1'!A1」と入力した後、オートフィルでシート1に入力されている分全てを簡単に入れる方法はないでしょうか? シート1の行数を数えてからその行数までドラッグしていたのですが、行数が多かったりすると大変なので、良いやり方がありましたら教えて下さい。よろしくお願いします。

  • シート順のオートフィルの設定に関して(excel)

    excelでsheetを複数用いた場合のオートフィルの設定に関して質問です。  sheet10のB2のセルを「=sheet1!K3」としてその隣の列のC2が「=sheet2!K3」となっていくようにオートフィルを行いたいのですが、実際に行うとC2が「=sheet1!L3」になり、sheet1内での処理になってしまいます。 どのような設定を行えば、セルの場所が同じでsheetの番号だけ異なるようなオートフィルの設定にできますか?(sheet1からsheet9までデータが入力されています。) どなたかご存知の方がいらっしゃいましたら、よろしくお願いします。 使用しているのはexcel2010です。

  • エクセルのオートフィルの区切り方がわかりません。

    エクセルのオートフィルの区切り方がわかりません。 ユーザ設定リストで新しくオートフィルを追加したいのですが、追加してもオートフィルとして出てきません。 どうやらコンマの打ち方が悪いようです。区切る場合はエンターを押してくださいと出るのですが、エンターを押すとエラー音がして押せません。どうしたらいいでしょうか?

  • Excelのオートフィルについて

    Excelで結合したセルにオートフィルで連続した値を入れたいのですが  (A1)と(A2)を結合して 「=Sheet2!B1」  (A3)と(A4)を結合して 「=Sheet2!B2」 と入力し  オートフィルで  (A5)と(A6)の結合に 「=Sheet2!B3」 としたいところ 「=Sheet2!B5」 になってしまいます。 うまく説明できないのですがいい方法があれば教えてください。 どうぞよろしくお願いします。

  • 2010Excelのオートフィルについて

    2010Excelのオートフィルについて オートフィルについて 列に 1 2 3~と入力してると 途中でたまに勝手に日付(◯月◯日)となってしまいます。 デリートしても オートフィルじゃなく普通に入力しても どうしても日付になってしまいます。 これでは表が完成しないので、 どうしたら直せるか教えてください。

  • オートフィルがきかない

    オートフィルがきかない オフィス フォーマック2008のエクセルですが オートフィルが効きません。フィルハンドルが 表れないのですが、何か設定があるのでしょうか?

    • ベストアンサー
    • Mac
  • オートフィルについて

    エクセルのバージョンは2002です =IF(ROUND(J326*1000,0)='[2011年度100全社間接費実績推移表.xls]1月実績'!$F$61,"","エラー!") このセルをオートフィルしたいのですが、1月→2月→3月 というように、セルは固定でシートをオートフィル するにはどうすればいいのでしょうか? よろしくお願いします

  • エクセルのオートフィルについて

    エクセルの機能で「オートフィル」があると思いますが 「オートフィル」のフィルは,フィルターのフィルでしょうか?

専門家に質問してみよう