ジェニファーは、ワークブックの最初のワークシートを設定すると、ワークシートのコピーを頻繁に作成する必要があり、通常はかなりの数のコピーになります。たとえば、彼女が特定のワークシートのコピーを20個作成する必要があるのは珍しいことではありません。彼女は、複数のコピーを簡単に作成する方法があるかどうか疑問に思います。右クリックして移動/コピー機能を使用すると、しばらくするとかなり面倒になります。

移動/コピーオプションをもう少し効率的に使用する方法があります。たとえば、元のワークシートから20個のワークシートを作成するとします。次の手順に従うことができます:

。単一のワークシートが選択されていることを確認してください。

。ワークシートタブを右クリックします。 Excelはコンテキストメニューを表示します。

。コンテキストメニューから「移動」または「コピー」を選択します。 Excelは、[移動またはコピー]ダイアログボックスを表示します。

。 (最後に移動)オプションを選択します。

。 [コピーを作成する]チェックボックスがオンになっていることを確認します。

。 [OK]をクリックします。これで、ワークシートの2つのコピー(元のコピーと作成したコピー)ができました。

。最初のワークシートタブをクリックし、Shiftキーを押しながら最後のワークシートタブをクリックして、両方のワークシートを選択します。

。選択したワークシートのタブを右クリックします。 Excelはコンテキストメニューを表示します。

。コンテキストメニューから「移動」または「コピー」を選択します。 Excelは、[移動またはコピー]ダイアログボックスを表示します。

。 (最後に移動)オプションを選択します。

。 [コピーを作成する]チェックボックスがオンになっていることを確認します。

。 [OK]をクリックします。これで、ワークシートのコピーが4つできました。

。最初のワークシートタブをクリックし、Shiftキーを押しながら最後のワークシートタブをクリックして、すべてのワークシートを選択します。

。選択したワークシートのタブを右クリックします。 Excelはコンテキストメニューを表示します。

。コンテキストメニューから「移動」または「コピー」を選択します。 Excelは、[移動またはコピー]ダイアログボックスを表示します。

。 (最後に移動)オプションを選択します。

。 [コピーを作成する]チェックボックスがオンになっていることを確認します。

。 [OK]をクリックします。これで、ワークシートのコピーが8つできました。

。最初のワークシートタブをクリックし、Shiftキーを押しながら最後のワークシートタブをクリックして、すべてのワークシートを選択します。

。選択したワークシートのタブを右クリックします。 Excelはコンテキストメニューを表示します。

。コンテキストメニューから「移動」または「コピー」を選択します。 Excelは、[移動またはコピー]ダイアログボックスを表示します。

。 (最後に移動)オプションを選択します。

。 [コピーを作成する]チェックボックスがオンになっていることを確認します。

。 [OK]をクリックします。これで、ワークシートのコピーが16個あります。

。最初のワークシートタブをクリックし、Shiftキーを押しながら4番目のワークシートタブをクリックして、4つのワークシートを選択します。

。選択したワークシートのタブを右クリックします。 Excelはコンテキストメニューを表示します。

。コンテキストメニューから「移動」または「コピー」を選択します。 Excelは、[移動またはコピー]ダイアログボックスを表示します。

。 (最後に移動)オプションを選択します。

。 [コピーを作成する]チェックボックスがオンになっていることを確認します。

。 [OK]をクリックします。これで、ワークシートのコピーが20個あります。

これは多くの手順のように思えるかもしれませんが、実際にはそうではありません。移動/コピー機能を20回ではなく5回使用して、目的のワークシート数に到達するだけです。ただし、このアプローチには1つの注意点があります。コピーするワークシートに定義済みのテーブルがある場合、ステップ8を通過できません。ステップ9を実行すると、次のようなメッセージが表示されます。ワークシートのいずれかにテーブルが含まれている場合、ワークシートのグループをコピーまたは移動することはできません。 (テーブルを含む単一のワークシートをコピーまたは移動できますが、それらのグループではありません。)

使用できる別のショートカットがあり、[移動]または[コピー]ダイアログボックスを使用する必要はありません。コピーするワークシートを選択し、ワークシート名([ワークシート]タブ)を右にドラッグするだけです。マウスポインタの横に小さな「ドキュメント」アイコンが表示されます。この時点でCtrlキーを押すと、アイコン内にプラス記号が表示されます。マウスボタンを離すと、ワークシートがコピーされます。グループ内のワークシートに定義済みのテーブルがない限り、この方法でワークシートのグループをコピーすることもできます。

ワークシートをコピーする別のオプションは、次のことです。

。必要に応じて、「マスター」ワークシートを作成します。

。作成するコピーごとに1つになるように、十分な数の空白のワークシートを追加します。 (空白のワークシートを追加する良い方法は、Shift + F11を押すことです。)

。マスターワークシートを選択します。

。 Ctrl + Aを押します。 Excelはマスターワークシートのすべてを選択します。

。 Ctrl + Cを押します。これで、すべてがクリップボードにコピーされます。

。作成した最初の空白のワークシートの[ワークシート]タブをクリックします。

。 Shiftキーを押しながら、最後に作成した空白のワークシートのワークシートタブをクリックします。

。 Ctrl + Vを押します。クリップボードの内容は、選択した各ワークシートに貼り付けられます。

これにより、マスターワークシートからすべてがコピーされますが、列の幅、行の高さ、印刷レイアウトの設定などはコピーされません。

これらの一部をコピーするためにいくつかの追加手順を実行できますが、すべてをコピーすることは困難です。

ただし、速度と利便性を高めるために、マクロを使用してコピーを作成するのが(私の見解では)最も簡単です。ブックに合計20のワークシートがあるようになるまで、選択したワークシートのコピーを作成する非常に単純なマクロを次に示します。

Sub SimpleCopy1()

Do While Sheets.Count < 20         ActiveSheet.Copy After:=Sheets(Sheets.Count)

Loop End Sub

ブックに(コピーするワークシート以外に)追加のワークシートが既に含まれている場合は、次のバージョンを使用するとメリットがあります。

Sub SimpleCopy2()

Dim J As Integer

For J = 1 To 20         ActiveSheet.Copy After:=Sheets(Sheets.Count)

Next J End Sub

コピーをいくつ作成するかをユーザーに尋ねることで、マクロをもう少し汎用的にすることができます。

Sub SimpleCopy2()

Dim J As Integer     Dim iWanted As Integer

On Error GoTo Done     iWanted = Cint(InputBox("Number of copies?"))



If iWanted >0 And iWanted < 201 Then         For J = 1 To iWanted             ActiveSheet.Copy After:=Sheets(Sheets.Count)

Next J     End If Done:

On Error GoTo 0 End Sub

このマクロは、作成されるワークシートのコピー数を1〜200に制限します(その範囲外では、何も実行されません)。ワークブックにすでに多数のワークシートがあり、追加するワークシートがを超える場合は、エラー処理が追加されます。ワークブックに含めることが許可されているワークシートの数。

選択するマクロアプローチに関係なく、クイックアクセスツールバーに追加するか、ショートカットキーを割り当てることをお勧めします。そうすれば、ワークシートを非常にすばやくコピーできます。

注:

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

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

このヒント(1600)は、Microsoft Excel 2007、2010、2013、2016、2019、およびOffice365のExcelに適用されます。