方法 : ブックを保存する

更新 : 2008 年 7 月

対象

このトピックの情報は、指定された Visual Studio Tools for Office プロジェクトおよび Microsoft Office のバージョンにのみ適用されます。

プロジェクトの種類

  • ドキュメント レベルのプロジェクト

  • アプリケーション レベルのプロジェクト

Microsoft Office のバージョン

  • Excel 2003

  • Excel 2007

詳細については、「アプリケーションおよびプロジェクトの種類別の使用可能な機能」を参照してください。

ブックを保存するには、いくつかの方法があります。パスを変更せずに、ブックを保存できます。これまでブックが一度も保存されていない場合は、パスを指定してブックを保存します。パスを明示的に指定しないと、ファイルは作成時に指定された名前で現在のフォルダに保存されます。メモリ内で開いているブックを変更せずに、ブックのコピーを保存することもできます。

パスを変更しないブックの保存

ドキュメント レベルのカスタマイズに関連付けられたブックを保存するには

  • ThisWorkbook クラスの Save メソッドを呼び出します。

    Me.Save()
    
    this.Save();
    

アプリケーション レベルのアドインでアクティブなブックを保存するには

  • Save メソッドを呼び出して、アクティブなブックを保存します。次のコード例を使用する場合は、Excel のアプリケーション レベルのプロジェクトの ThisAddIn クラスから実行します。

    Me.Application.ActiveWorkbook.Save()
    
    this.Application.ActiveWorkbook.Save();
    

新しいパスを指定したブックの保存

指定したブックを別の場所または別の名前で保存でき、オプションでファイル形式、パスワード、アクセス モードなども指定できます。

h1e33e36.alert_note(ja-jp,VS.90).gifメモ :

形式を指定して保存すると対話処理が発生することがあるため、新しいパスでブックを保存する前に DisplayAlerts プロパティを False に設定することをお勧めします。このプロパティを False に設定すると、Excel ではすべて既定値が使用されます。

ドキュメント レベルのカスタマイズに関連付けられたブックを保存するには

  • ThisWorkbook クラスの SaveAs メソッドを呼び出します。次のコード例を使用するには、ThisWorkbook クラスで実行します。

    Me.SaveAs("C:\Book1.xml")
    
    this.SaveAs(@"C:\Book1.xml", missing,
        missing, missing, missing, missing, Excel.XlSaveAsAccessMode.xlNoChange,
        missing, missing, missing, missing, missing);
    

アプリケーション レベルのアドインでアクティブなブックを保存するには

  • SaveAs メソッドを呼び出して、新しいパスでアクティブなブックを保存します。次のコード例を使用する場合は、Excel のアプリケーション レベルのプロジェクトの ThisAddIn クラスから実行します。

    Me.Application.ActiveWorkbook.SaveAs("C:\Test\Book1.xml")
    
    this.Application.ActiveWorkbook.SaveAs(@"C:\Test\Book1.xml",
        missing, missing, missing, missing, missing, 
        Excel.XlSaveAsAccessMode.xlNoChange, missing, missing, missing, 
        missing, missing);
    

ブックのコピーの保存

メモリ内で開いているブックを変更せずに、ブックのコピーをファイルに保存できます。これは、ブックの場所を変えずにバックアップ コピーを作成するときに便利です。

ドキュメント レベルのカスタマイズに関連付けられたブックを保存するには

  • ThisWorkbook クラスの SaveCopyAs メソッドを呼び出します。次のコード例を使用するには、ThisWorkbook クラスで実行します。

    Me.SaveCopyAs("C:\Book1.xls")
    
    this.SaveCopyAs(@"C:\Book1.xls");
    

アプリケーション レベルのアドインでアクティブなブックを保存するには

  • アクティブなブックのコピーを保存するため、SaveCopyAs メソッドを呼び出します。次のコード例を使用する場合は、Excel のアプリケーション レベルのプロジェクトの ThisAddIn クラスから実行します。

    Me.Application.ActiveWorkbook.SaveCopyAs("C\Book1.xls")
    
    this.Application.ActiveWorkbook.SaveCopyAs(@"C\Book1.xls");
    

堅牢性の高いプログラム

ブックを保存またはコピーするメソッドを対話的にキャンセルすると、コード内で実行時エラーが発生します。たとえば、SaveAs メソッドを呼び出すプロシージャで Excel から確認メッセージが表示されるようにしている場合、ユーザーが [キャンセル] をクリックすると、Excel で実行時エラーが発生します。

参照

処理手順

方法 : ブックをアクティブにする

方法 : ブックを閉じる

概念

ブックの操作

Workbook ホスト項目

ホスト項目およびホスト コントロールのプログラム上の制限事項

Office ソリューションの省略可能なパラメータについて

ホスト項目とホスト コントロールの概要

履歴の変更

日付

履歴

理由

2008 年 7 月

アプリケーション レベルのアドインで使用できるコード例を追加

カスタマ フィードバック