Excel interop:保存工作簿而不显示保存对话框 [英] Excel interop: saving workbook without showing save dialog
问题描述
我必须创建一个将数据集导出到Excel的控制台应用程序。我已经尝试谷歌搜索和看这个主题的帖子,但没有真正找到我要找的东西。问题是它不应该弹出保存窗口,它应该自动创建excel文件。到目前为止,我有以下代码,但我不知道如何使其自动保存。感谢任何帮助。
I have to create a console application that exports a dataset to Excel. I've tried googling and looking at posts on this topic but haven't really found what I'm looking for. The problem is that it shouldn't pop up the save window, it should automatically create the excel file. So far I have the following code, but I don't know how to make it save automatically. Would appreciate any help.
public static void CreateWorkbook(DataSet ds, String path)
{
int rowindex = 0;
int columnindex = 0;
Microsoft.Office.Interop.Excel.Application wapp = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Worksheet wsheet;
Microsoft.Office.Interop.Excel.Workbook wbook;
wapp.Visible = false;
wbook = wapp.Workbooks.Add(true);
wsheet = (Worksheet)wbook.ActiveSheet;
try
{
for (int i = 0; i < ds.Tables[0].Columns.Count; i++)
{
wsheet.Cells[1, i + 1] = ds.Tables[0].Columns[i].ColumnName;
}
foreach (DataRow row in ds.Tables[0].Rows)
{
rowindex++;
columnindex = 0;
foreach (DataColumn col in ds.Tables[0].Columns)
{
columnindex++;
wsheet.Cells[rowindex + 1, columnindex] = row[col.ColumnName];
}
}
}
catch (Exception ex)
{
String err = ex.Message;
}
wapp.UserControl = true;
}
推荐答案
code> WorkBook.SaveAs()是可选的,但如果您想要的话,您可以使用 Type.Missing
。
All of the arguments to WorkBook.SaveAs()
are optional, but you can just use Type.Missing
for most of them if you want to.
典型的电话会如下所示:
The typical call would look like:
wbook.SaveAs("c:\\temp\\blah", Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookDefault, Type.Missing, Type.Missing,
false, false, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
wbook.Close();
请注意,我没有包含文件扩展名,Excel将为您设置。
Note that I didn't include the file extension, Excel will set that for you.
这篇关于Excel interop:保存工作簿而不显示保存对话框的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!