2016-07-27 3 views
1

私のアプリケーションでは、Excelファイルを作成します。これを実現するために、Microsoft.Office.Interop.Excel.Application変数をインスタンス化し、VisibleメンバをFalseに設定します。これを実行すると、タスクマネージャでEXCEL.EXEプロセスが表示されます。C#Excelインスタンスが可視であり、アプリケーション外のファイルを開く

問題は、この変数をアプリケーションの実行期間中存続させる必要があることです。したがって、このアプリケーションの外でExcelファイルを開くと、既存のExcelインスタンスが使用されます。作成時にVisibleをfalseに設定するため、開いたファイルが表示されません。

私のアプリケーションでExcelインスタンスを作成する方法はありますか?「このインスタンスをアプリケーションの外で使用させないでください。もし誰かがExcelファイルを外に開いたいなら、これを使うことはできませんインスタンス、それは新しいExcelインスタンスを作成する必要があります "?

おかげ

internal Application _application; 
_application = new Application() 
{ 
    Visible = false, 
    DisplayAlerts = false, 
    ScreenUpdating = false 
}; 

答えて

1

私はExcelが新しいインスタンス内の各ファイルを開くように指定することによって達成することができるかあなたが探していると信じています。

これを解決するには、「Dyanamicデータを使用する他のアプリケーションを無視するチェック>> [詳細設定]タブをクリックし、一般的に、下にスクロール>「オプションをエクセル」に行く:

This Microsoft Community pageは、以下の手順を説明しますエクスチェンジ(DDE)」

同じページには、このソリューションが動作しない場合はファイルの種類のオプションを変更する必要の代替ソリューションを提供します。

関連する問題