10

Excelファイルを開いて書き込むことはできましたが、ファイルへのパスを渡してファイルを保存しようとすると、保存操作で[保存]ダイアログが表示されます。指定されたパスにファイルを完全に保存することを期待していました

コードは次のとおりです。

excelApp.Save(exportToDirectory);
excelApp.Quit();

ここで、exportToDirectoryは「C:\ files\strings.xlsx」です。

PS:私はすでにExcelバージョンと同様の問題を確認しました。

ありがとう

4

7 に答える 7

15

Workbook.SaveAs代わりに使用する必要がありますApplication.Save

Excel.Application app = new Excel.Application();
Excel.Workbook wb = app.Workbooks.Add(missing);
...
wb.SaveAs(@"C:\temp\test.xlsx", missing, missing, missing, missing,
          missing, Excel.XlSaveAsAccessMode.xlExclusive,
          missing, missing, missing, missing, missing);
于 2009-04-24T12:49:21.400 に答える
15

次のプロパティを設定することも役立つ場合があります。

excelApp.DisplayAlerts = false;
excelApp.ScreenUpdating = false;
excelApp.Visible = false;
excelApp.UserControl = false;
excelApp.Interactive = false;
于 2009-04-24T12:52:53.217 に答える
2

ActiveWorkbook.Saved プロパティtrueに設定するだけで 、ダイアログ ボックスなしで Quit() できます。

于 2011-03-06T06:30:52.103 に答える
2

さて、これがマイクロソフトのやり方です:

// Save the Workbook and quit Excel.
m_objBook.SaveAs(m_strSampleFolder + "Book1.xls", m_objOpt, m_objOpt, 
    m_objOpt, m_objOpt, m_objOpt, Excel.XlSaveAsAccessMode.xlNoChange, 
    m_objOpt, m_objOpt, m_objOpt, m_objOpt);
m_objBook.Close(false, m_objOpt, m_objOpt);
m_objExcel.Quit();

KB 記事の1 つを参照してください。

于 2009-04-24T12:52:36.977 に答える
1

excelApp.ActiveWorkbook.save()ファイルを保存できるものを見つけたので、尋ねることなく終了できます。

于 2011-02-15T20:18:20.440 に答える
1

ExcelApp.Interactive = falseすべてのダイアログ ボックスを非表示にします。

excelApp.ActiveWorkbook.SaveAs(exportDirectory)

于 2009-04-24T13:02:03.363 に答える
1

myBook.Saved = true;
myBook.SaveCopyAs(xlsFileName);
myBook.Close(null, null, null);
myExcel.Workbooks.Close();
myExcel.Quit();

于 2013-08-23T07:32:46.310 に答える