2013-07-01 13 views
7

せずにC#Excelワークブックを終了しようとすると、まだ私が渡されていても、アップしますfalseを最初のパラメータとして使用します。私もtrueで試して、2番目のパラメータとしてファイルパスを指定していますが、どちらの場合も、閉じる前に保存するかどうかを尋ねるダイアログボックスが表示されます。誰が私にここで起こっていることを教えてもらえますか?は、私はいくつかのファイルをエクセル、私はそれらを閉じたときに、私は</p> <pre><code>outputExcelWorkBook.Close(false, paramMissing, paramMissing); </code></pre> <p>しかし、ダイアログボックスを使用し、編集するには、Microsoft Officeの相互運用機能を使用しています]ダイアログボックス

答えて

12

Application.DisplayAlertsプロパティをfalseに設定してみてください。大部分のオートメーション・ルーチンでこのプロパティーをfalseに設定すると便利です。戻る前に前の値に戻すことを忘れないでください。

Application applicationInstance = ...; 
var oldDisplayAlertsValue = applicationInstance.DisplayAlerts; 
applicationInstance.DisplayAlerts = false; 
try 
{ 
    outputExcelWorkBook.Close(false, Missing.Value, Missing.Value); 
} 
finally 
{ 
    appliationInstance.DisplayAlerts = oldDisplayAlertsValue; 
} 
3

これが私の仕事:

  1. はエクセル

  2. 開き、ブック

  3. を開始するアクティブなシートを取得し、[セルに編集(追加、 "テキスト" を作ります2,2])

  4. 単一のパラでブックを閉じる「変更を保存する」を意味するtrueのメーター

  5. ダイアログボックスは表示されません。

注:パラメータなしで閉じるを呼び出すと、変更を保存するように求められます。

Microsoft.Office.Interop.Excel.Application excel = new Application(); 
    Microsoft.Office.Interop.Excel.Workbook workBook = 
     excel.Workbooks.Open(fileLocation); 
    Microsoft.Office.Interop.Excel.Worksheet sheet = workBook.ActiveSheet; 
    sheet.Cells[2, 2] = "Text"; 
    workBook.Close(true); 
    excel.Quit(); 
関連する問題

 関連する問題