ある種の月次情報をワークブックで追跡することは珍しいことではありません。あなたは経費、売上高、在庫移動、株価、または他の何千ものもののいずれかを追跡している可能性があります。新しい月を開始するときは、前月のワークブックのコピーを作成してから、新しく作成したコピーのさまざまな場所に表示される月の名前を変更する方法を探すことができます。

変更する月の名前がさまざまなワークシートにテキストとして保存されている場合は、Excelの検索と置換機能を使用して変更を加えることができます。次の手順に従ってください:

。変更を加える最初のワークシートのタブをクリックします。

。 Shiftキーを押しながら、変更を加える最後のワークシートのタブをクリックします。これで、変更するすべてのワークシートが選択されているはずです。

。 Ctrl + Hを押して、[検索と置換]ダイアログボックスの[置換]タブを表示します。

。 [検索する文字列]ボックスに、古い月の名前を入力します。

。 [置換]ボックスに、新しい月の名前を入力します。

。 [すべて置換]をクリックします。

。 [検索と置換]ダイアログボックスを閉じます。

これらの手順でワークブックに表示される特定の月の名前が変更されない場合は、月の名前が実際にはテキストではなく、月のみを表示するようにフォーマットされた日付値である可能性があります。その場合、検索と置換は使用できません。代わりに、セルに格納されている日付値を変更するだけです。

ワークシートのタブで月の名前をすばやく変更する方法が必要な場合は、少し注意が必要です。 Excelの検索と置換機能は、タブ名のテキストを検索または置換しません。通常は手作業で行う必要がありますが、多くの場合は、変更を行うマクロを作成することをお勧めします。次のマクロは、検索しているテキストとそれを置き換えるテキストの入力を求めます。次に、各ワークシートタブをステップ実行し、変更を加えます。

Sub TabReplace()

Dim I As Integer, J As Integer     Dim sFind As String     Dim sReplace As String     Dim sTemp As String

sFind = InputBox("Text to find?")

sReplace = InputBox("Replace it with?")



If (sFind & sReplace) = "" Then Exit Sub

For I = 1 To Sheets.Count         sTemp = Sheets(I).Name         J = InStr(sTemp, sFind)

While J > 0             sTemp = Left(sTemp, J - 1) & sReplace _               & Mid(sTemp, (J + Len(sFind)))

J = InStr(sTemp, sFind)

Wend

If sTemp <> Sheets(I).Name Then             Sheets(I).Name = sTemp         End If     Next I End Sub

ここに示されている手順(およびマクロ)を使用すると、ブックの更新作業が簡単になりますが、ブックの実行方法を単純に再考する方が簡単な場合があります。今月の名前を含むようにセルを設定してから、ブック全体の適切なセルでその名前を参照する方が簡単な場合があります。次に、1つのセルで月の名前を変更するだけで、他の場所で自動的に変更されます。他の_ExcelTips_では、特定のセルの内容に基づいてタブ名を動的に変更する方法も学びました。

注:

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

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

このヒント(2748)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。