我使用C#Window窗体应用程序将一些数据添加到Excel文件中。但是在执行程序之后,打开excel文件我需要关闭Window窗体,否则我不能打开我添加数据的excel文件以及任何excel文件。当我试图打开任何excel文件而不关闭Window表单应用程序时,它没有显示任何数据和单元格(只是一个空白的屏幕)。
我需要关闭我的appilcation才能查看excel文件。即使在我编写了释放COM对象的代码。
workbook = appExl.Workbooks.Open(Excel_file, 0,false, 5, "", "", false, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "", true, false, 0, true, false, false);
workbook.Save();
System.Runtime.InteropServices.Marshal.ReleaseComObject(ShtRange);
System.Runtime.InteropServices.Marshal.ReleaseComObject(NwSheet);
workbook.Close(true, Missing.Value, Missing.Value);
System.Runtime.InteropServices.Marshal.ReleaseComObject(workbook);
appExl.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject(appExl);
所以请帮助我如何在执行后不关闭应用程序的情况下打开excel文件?
答案 0 :(得分:0)
下面是一个示例代码,我使用C#写入excel表,它运行良好。使用以下命名空间 使用Microsoft.Office.Interop.Excel; 使用Excel = Microsoft.Office.Interop.Excel;
检查出来
Excel.Application XlApp = null;
Excel.Workbook workbook = null;
Excel.Worksheet Ws = null;
Excel.Range Range1 = null;
Excel.Worksheet X = null;
XlApp = new Excel.Application();
XlApp.Visible = true;
workbook = XlApp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);
Ws = (Excel.Worksheet)workbook.Worksheets[1];
XlApp.WindowState = XlWindowState.xlMaximized;
Ws = (Excel.Worksheet)workbook.Worksheets[1];
Ws.Activate();
Ws.Name = "MyFirstSheet";
int rowIndex = 1; int columnIndex = 2;
xlApp.Cells(rowIndex, columnIndex) = "Blah"
答案 1 :(得分:0)
首先尝试打开现有文件(xls)。然后根据需要添加工作表并将数据写入其中
Missing _value = Missing.Value;
string strtemp = "C:\\MyExcel.xls";
Microsoft.Office.Interop.Excel.Workbook Wtemp = XlApp.Workbooks.Open(strtemp, _value, _value, _value, _value, _value, _value, _value, _value, _value, _value, _value, _value, _value, _value);
Wtemp = xlApp.Workbooks.Add(Microsoft.Office.Interop.Excel.XlWBATemplate.xlWBATWorksheet);
然后通过使用上述功能,您可以向其写入数据......