ブックをシステム上の複数の場所に定期的にコピーする必要がある場合があります。たとえば、開いているブックをローカルハードドライブと、実際にオフィスネットワーク上にあるいくつかのマップされたドライブにコピーする必要がある場合があります。

Excelにはこれを行うための組み込み機能はありませんが、さまざまな場所が明確に定義されている場合は、保存を行うマクロを作成できます。次のマクロは、そのようなツールの例です。

Sub SaveToLocations()

Dim OrigName As String

OrigName = ActiveWorkbook.FullName     ActiveWorkbook.SaveAs "G:\" + ActiveWorkbook.Name     ActiveWorkbook.SaveAs "L:\" + ActiveWorkbook.Name     ActiveWorkbook.SaveAs "K:\" + ActiveWorkbook.Name     ActiveWorkbook.SaveAs "S:\" + ActiveWorkbook.Name     ActiveWorkbook.SaveAs OrigName End Sub

マクロの特定の例では、アクティブなブックを5つの異なる場所に保存し、すべて同じブック名を使用します。マクロは、ブックの現在の場所を決定して、最後に現在の場所に保存できるようにします。これが行われる理由は、通常の保存ツールを引き続き使用して、期待される結果を得ることができるようにするためです。

独自のシステムでこのマクロを使用する場合は、各ワークブックを保存する場所のドライブ文字を必ず変更するだけです。指定したドライブの1つがリムーバブルメディアを使用する場所用であり、ドライブにメディアがない場合、マクロはエラーを生成して停止します。次に、ブックが最初に保存された場所を特定して、手動で(名前を付けて保存を使用して)そこに再保存できるようにする必要があります。

このマクロのもう1つの特徴は、SaveAsメソッドを使用するため、現在のブックと同じ名前のブックが各宛先に既に存在する場合、Excelは既存のバージョンのブックを上書きするかどうかを尋ねるということです。これは、元の場所への最後の保存の場合に常に当てはまります。

注:

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

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

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

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

Excelの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります:

link:/ excel-Saving_in_Multiple_Locations [複数の場所に保存]