次の方法で共有


方法: プログラムによって文書を保存する

Microsoft Office Word 文書を保存するには、いくつかの方法があります。名前を変更せずに文書を保存することもできますし、新しい名前を指定して文書を保存することもできます。

対象: このトピックの情報は、Word 2013 と Word 2010 のドキュメント レベルのプロジェクトおよびアプリケーション レベルのプロジェクトに適用されます。詳細については、「Office アプリケーションおよびプロジェクト タイプ別の使用可能な機能」を参照してください。

名前を変更せずに文書を保存する

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

  • Microsoft.Office.Tools.Word.Document クラスの Save メソッドを呼び出します。このコード例を使用するには、プロジェクトの ThisDocument クラスから実行します。

    Me.Save()
    
    this.Save();
    

アクティブ文書を保存するには

  • アクティブ文書の _Document.Save メソッドを呼び出します。このコード例を使用するには、プロジェクトの ThisDocument クラスまたは ThisAddIn クラスから実行します。

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

保存しようとしている文書がアクティブ文書かどうか不明な場合は、文書を名前で指定できます。

名前で指定した文書を保存するには

  • Documents コレクションの引数に文書名を使用します。このコード例を使用するには、プロジェクトの ThisDocument クラスまたは ThisAddIn クラスから実行します。

    Me.Application.Documents("C:\Test\NewDocument.docx").Save()
    
    this.Application.Documents[@"C:\Test\NewDocument.docx"].Save();
    

新しい名前を指定して文書を保存する

新しい名前を指定して文書を保存するには、SaveAs メソッドを使用します。ドキュメント レベルの Word プロジェクトにある Microsoft.Office.Tools.Word.Document ホスト項目のメソッド、または Word プロジェクトにあるネイティブな Microsoft.Office.Interop.Word.Document オブジェクトのメソッドを使用できます。このメソッドでは、新しいファイル名を指定する必要がありますが、他の引数は省略できます。

[!メモ]

ThisDocument の DocumentBeforeSave イベント ハンドラー内で SaveAs ダイアログ ボックスを表示し、Cancel パラメーターを false に設定すると、アプリケーションの予期しない終了が発生することがあります。Cancel パラメーターを true に設定すると、自動保存が無効になっているというエラー メッセージが表示されます。

新しい名前を指定して、ドキュメント レベルのカスタマイズに関連付けられた文書を保存するには

  • 絶対パスとファイル名を使用して、プロジェクトの ThisDocument クラスの SaveAs メソッドを呼び出します。指定された名前のファイルが既にフォルダーに存在する場合は、自動的に上書きされます。このコード例を使用するには、ThisDocument クラスから実行します。

    [!メモ]

    ターゲット ディレクトリが存在しない場合や、ファイルを保存するうえで他の問題がある場合は、SaveAs メソッドは例外をスローします。SaveAs メソッドの周囲または呼び出しメソッドの内部に try…catch ブロックを使用することをお勧めします。

    Me.SaveAs("C:\Test\NewDocument.docx")
    
    object fileName = @"C:\Test\NewDocument.docx"; 
    
    this.SaveAs(ref fileName,
        ref missing, ref missing, ref missing, ref missing, ref missing,
        ref missing, ref missing, ref missing, ref missing, ref missing,
        ref missing, ref missing, ref missing, ref missing, ref missing);
    

新しい名前を指定してネイティブな文書を保存するには

  • 絶対パスとファイル名を使用して、保存する Microsoft.Office.Interop.Word.DocumentSaveAs メソッドを呼び出します。指定された名前のファイルが既にフォルダーに存在する場合は、自動的に上書きされます。

    次のコード例では、新しい名前を使用して、アクティブ文書を保存します。このコード例を使用するには、プロジェクトの ThisDocument クラスまたは ThisAddIn クラスから実行します。

    [!メモ]

    ターゲット ディレクトリが存在しない場合や、ファイルを保存するうえで他の問題がある場合は、SaveAs メソッドは例外をスローします。SaveAs メソッドの周囲または呼び出しメソッドの内部に try…catch ブロックを使用することをお勧めします。

    Me.Application.ActiveDocument.SaveAs("C:\Test\NewDocument.docx")
    
    object fileName = @"C:\Test\NewDocument.docx";
    
    this.Application.ActiveDocument.SaveAs(ref fileName,
        ref missing, ref missing, ref missing, ref missing, ref missing,
        ref missing, ref missing, ref missing, ref missing, ref missing,
        ref missing, ref missing, ref missing, ref missing, ref missing);
    

コードのコンパイル

このコード例に必要な条件は次のとおりです。

  • 文書を名前で指定して保存するには、ドライブ C の Test というディレクトリに NewDocument.doc という名前の文書が存在する必要があります。

  • 文書を新しい名前で保存するには、ドライブ C に Test というディレクトリが存在する必要があります。

参照

処理手順

方法: プログラムによって文書を閉じる

方法: プログラムによって既存文書を開く

概念

Document ホスト項目

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