Excelでは、さまざまな方法で新しいワークシートを作成できます。新しいワークシートを作成し、すべてを1つのステップで名前を付けたい場合はどうなりますか?これを行う最も簡単な方法は、マクロを使用することです。以下は、名前を要求し、ワークシートを作成して、そのワークシートに指定された名前を付けるマクロの例です。

Sub AddNameNewSheet1()

Dim Newname As String     Newname = InputBox("Name for new worksheet?")

If Newname <> "" Then         Sheets.Add Type:=xlWorksheet         ActiveSheet.Name = Newname     End If End Sub

このマクロは、ユーザーがExcel標準で「合法」なワークシート名を入力する限り正常に機能します。新しい名前がExcelで受け入れられない場合でも、ワークシートは追加されますが、期待どおりに名前が変更されません。

より堅牢なマクロは、ワークシートの命名で発生する可能性のあるエラーを予測します。次のサンプルコードはワークシートを追加しますが、間違った名前が指定されている場合はワークシート名を要求し続けます。

Sub AddNameNewSheet2()

Dim CurrentSheetName As String

'Remember where we started     CurrentSheetName = ActiveSheet.Name

'Add New Sheet     Sheets.Add

'Make sure the name is valid     On Error Resume Next

'Get the new name      ActiveSheet.Name = InputBox("Name for new worksheet?")



'Keep asking for name if name is invalid     Do Until Err.Number = 0         Err.Clear         ActiveSheet.Name = InputBox("Try Again!" _           & vbCrLf & "Invalid Name or Name Already Exists" _           & vbCrLf & "Please name the New Sheet")

Loop     On Error GoTo 0

'Go back to where you started     Sheets(CurrentSheetName).Select End Sub

注:

このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

link:/ excelribbon-ExcelTipsMacros [ここをクリックして、新しいブラウザタブでその特別なページを開きます]

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(10846)は、Microsoft Excel 2007、2010、2013、2016、2019、およびOffice 365のExcelに適用されます。Excelの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。

link:/ excel-Creating_Worksheets_with_a_Macro [マクロを使用したワークシートの作成]