首页 > 代码库 > C#批量导入Excel或WPS实现方法
C#批量导入Excel或WPS实现方法
批量导入导出Excel,WPS,TXT,可按照系统是否安装OFFICE、WPS情况选择,导出是自动选择。
上效果图
1 /// <summary> 2 /// //获得当前你选择的Excel Sheet的所有名字 3 /// </summary> 4 /// <param name="filePath">文件路径</param> 5 /// <param name="ExcelType">1 Microsoft Excel 2 WPS Excel</param> 6 /// <returns></returns> 7 public static string[] GetExcelSheetNames(string filePath, int ExcelType) 8 { 9 try 10 { 11 if (ExcelType == 1) 12 { 13 Microsoft.Office.Interop.Excel.ApplicationClass excelApp = new Microsoft.Office.Interop.Excel.ApplicationClass(); 14 Microsoft.Office.Interop.Excel.Workbooks wbs = excelApp.Workbooks; 15 Microsoft.Office.Interop.Excel.Workbook wb = wbs.Open(filePath, Type.Missing, Type.Missing, Type.Missing, Type.Missing, 16 Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, 17 Type.Missing, Type.Missing, Type.Missing, Type.Missing); 18 int count = wb.Worksheets.Count; 19 string[] names = new string[count]; 20 for (int i = 1; i <= count; i++) 21 { 22 names[i - 1] = ((Microsoft.Office.Interop.Excel.Worksheet)wb.Worksheets[i]).Name; 23 } 24 return names; 25 } 26 else 27 { 28 ET.Application etApp; 29 ET.workbook etbook; 30 etApp = new ET.Application(); 31 etbook = new ET.workbook(); 32 etbook = (ET.workbook)etApp.Workbooks.Open(filePath, null, null, null, null, null, null, null, null, null, null, null, null); 33 int count = etbook.Worksheets.Count; 34 string[] names = new string[count]; 35 for (int i = 1; i <= count; i++) 36 { 37 names[i - 1] = ((ET.Worksheet)etbook.Worksheets[i]).Name; 38 } 39 return names; 40 } 41 } 42 catch 43 { 44 return null; 45 } 46 } 47 48 //引用命名空间 using Microsoft.Office.Interop.Excel;WPS的ET 49 /// <summary> 50 /// DataGridView导出文件到Microsoft Excel WPS Excel 文本文档 51 /// </summary> 52 /// <param name="gridView"></param> 53 /// <param name="excludeColumnsIndexList">排除列"0,1,2"</param> 54 /// <param name="fileName"></param> 55 /// <param name="sheetName"></param> 56 public static void ExportDataGridViewAsExcel(DataGridView gridView, string excludeColumnsIndexList,string fileName, string sheetName) 57 { 58 //导出到execl 59 try 60 { 61 SaveFileDialog saveFileDialog = new SaveFileDialog(); 62 saveFileDialog.Filter = "Microsoft Excel(*.xls)|*.xls|WPS Excel(*.xls)|*.xls|文本文档(*.txt)|*.txt"; 63 saveFileDialog.FileName = fileName; //dataGridView1.Rows[0].Cells[0].Value.ToString() + "幸运榜单_" + DateTime.Now.ToString("yyyymmddhhmmss") + ""; 64 saveFileDialog.FilterIndex = 0; 65 saveFileDialog.RestoreDirectory = true; 66 saveFileDialog.CreatePrompt = true; 67 saveFileDialog.Title = "导出文件保存为"; 68 // saveFileDialog.ShowDialog(); 69 if (saveFileDialog.ShowDialog() == DialogResult.OK) 70 { 71 string strName = saveFileDialog.FileName; 72 if (strName.Length != 0) 73 { 74 int rowscount = gridView.Rows.Count; 75 int colscount = gridView.Columns.Count; 76 if (rowscount <= 0) 77 { 78 MessageBox.Show("无数据需要保存 ", "信息", MessageBoxButtons.OK, MessageBoxIcon.Information); 79 return; 80 } 81 if (colscount <= 0) 82 { 83 MessageBox.Show("无数据需要保存 ", "信息", MessageBoxButtons.OK, MessageBoxIcon.Information); 84 return; 85 } 86 if (saveFileDialog.FilterIndex == 1) 87 { 88 if (rowscount > 65536) 89 { 90 MessageBox.Show("行太多(最大限制为 65536行),不能保存! ", "信息", MessageBoxButtons.OK, MessageBoxIcon.Information); 91 return; 92 } 93 if (colscount > 255) 94 { 95 MessageBox.Show("列太多(最大限制为 255列), 不能保存! ", "信息", MessageBoxButtons.OK, MessageBoxIcon.Information); 96 return; 97 } 98 try 99 {100 //this.toolStripProgressBar1.Visible = true;101 System.Reflection.Missing miss = System.Reflection.Missing.Value;102 Microsoft.Office.Interop.Excel.ApplicationClass excel = new Microsoft.Office.Interop.Excel.ApplicationClass();103 excel.Application.Workbooks.Add(true); ;104 excel.Visible = false;//若是true,则在导出的时候会显示EXcel界面。105 if (excel == null)106 {107 MessageBox.Show("Microsoft Excel无法启动!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);108 return;109 }110 Microsoft.Office.Interop.Excel.Workbooks books = (Microsoft.Office.Interop.Excel.Workbooks)excel.Workbooks;111 Microsoft.Office.Interop.Excel.Workbook book = (Microsoft.Office.Interop.Excel.Workbook)(books.Add(miss));112 Microsoft.Office.Interop.Excel.Worksheet sheet = (Microsoft.Office.Interop.Excel.Worksheet)book.ActiveSheet;113 sheet.Name = sheetName;114 string[,] datas = new string[rowscount + 1, colscount];115 int m = 0, n = 0;116 //生成列名称 这里i是从1开始的 因为我第0列是个隐藏列ID 没必要写进去117 for (int i = 0; i < gridView.ColumnCount; i++)118 {119 if (("," + excludeColumnsIndexList + ",").IndexOf("," + i.ToString() + ",") == 0)120 {121 continue;122 }123 if (gridView.Columns[i].Visible)124 {125 datas[0, m] = gridView.Columns[i].HeaderText.ToString();126 m++;127 }128 129 }130 //填充数据131 for (int i = 0; i < gridView.RowCount; i++)132 {133 //j也是从1开始 原因如上 每个人需求不一样134 n = 0;135 for (int j = 0; j < gridView.ColumnCount; j++)136 {137 if (("," + excludeColumnsIndexList + ",").IndexOf("," + j.ToString() + ",") == 0)138 {139 continue;140 }141 if (gridView.Columns[j].Visible)142 {143 if (gridView[j, i].Value.GetType() == typeof(string))144 {145 datas[i+1, n] = "‘" + gridView[j, i].Value.ToString();146 }147 else148 {149 datas[i+1, n] = gridView[j, i].Value.ToString();150 }151 n++;152 }153 }154 //this.toolStripProgressBar1.Value += 100 / gridView.RowCount;155 }156 int exportRowCount = rowscount + 1;157 Microsoft.Office.Interop.Excel.Range range = sheet.get_Range("A1", IndexToColumn(colscount) + exportRowCount.ToString());158 range.Value2 = datas;159 160 sheet.Columns.EntireColumn.AutoFit(); // Automatically change the column width161 162 book.SaveAs(strName, Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookNormal, miss, miss, miss,163 miss, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlShared, miss, miss, miss,164 miss, miss);165 //sheet.SaveAs(strName, miss, miss, miss, miss, miss, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, miss, miss, miss);166 book.Close(false, miss, miss);167 books.Close();168 excel.Quit();169 System.Runtime.InteropServices.Marshal.ReleaseComObject(sheet);170 System.Runtime.InteropServices.Marshal.ReleaseComObject(book);171 System.Runtime.InteropServices.Marshal.ReleaseComObject(books);172 System.Runtime.InteropServices.Marshal.ReleaseComObject(excel);173 174 GC.Collect();175 }176 catch (Exception ex)177 {178 MessageBox.Show(ex.Message, "导出失败,\n1、如果未安装Microsoft Excel,请导出时尝试选择保存到WPS Excel或者文本文档!\n2、请确保导出到的目标文件未打开,否则程序占用可能导致失败。\n3、如已关闭还提示错误,请尝试在任务管理器结束Excel程序。");179 return;180 }181 182 }183 else if (saveFileDialog.FilterIndex == 2)184 {185 if (rowscount > 65536)186 {187 MessageBox.Show("行太多(最大限制为 65536行),不能保存! ", "信息", MessageBoxButtons.OK, MessageBoxIcon.Information);188 return;189 }190 if (colscount > 255)191 {192 MessageBox.Show("列太多(最大限制为 255列), 不能保存! ", "信息", MessageBoxButtons.OK, MessageBoxIcon.Information);193 return;194 }195 try196 {197 ET.Application etApp;198 //获取工作表表格199 etApp = new ET.Application();200 etApp.Workbooks.Add(Type.Missing);201 etApp.Visible = false;202 if (etApp == null)203 {204 MessageBox.Show("WPS Excel无法启动!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);205 return;206 }207 System.Reflection.Missing miss = System.Reflection.Missing.Value;208 ET.Workbooks books = (ET.Workbooks)etApp.Workbooks;209 ET.workbook book = (ET.workbook)(books.Add(miss));210 ET.Worksheet sheet = (ET.Worksheet)book.ActiveSheet;211 sheet.Name = sheetName;212 string[,] datas = new string[rowscount + 1, colscount];213 int m = 0, n = 0;214 //生成列名称 这里i是从1开始的 因为我第0列是个隐藏列ID 没必要写进去215 for (int i = 0; i < gridView.ColumnCount; i++)216 {217 if (("," + excludeColumnsIndexList + ",").IndexOf("," + i.ToString() + ",") == 0)218 {219 continue;220 }221 if (gridView.Columns[i].Visible)222 {223 datas[0, m] = gridView.Columns[i].HeaderText.ToString();224 m++;225 }226 227 }228 //填充数据229 for (int i = 0; i < gridView.RowCount; i++)230 {231 //j也是从1开始 原因如上 每个人需求不一样232 n = 0;233 for (int j = 0; j < gridView.ColumnCount; j++)234 {235 if (("," + excludeColumnsIndexList + ",").IndexOf("," + j.ToString() + ",") == 0)236 {237 continue;238 }239 if (gridView.Columns[j].Visible)240 {241 if (gridView[j, i].Value.GetType() == typeof(string))242 {243 datas[i + 1, n] = "‘" + gridView[j, i].Value.ToString();244 }245 else246 {247 datas[i + 1, n] = gridView[j, i].Value.ToString();248 }249 n++;250 }251 }252 //this.toolStripProgressBar1.Value += 100 / gridView.RowCount;253 }254 int exportRowCount = rowscount + 1;255 ET.Range range = sheet.get_Range("A1", IndexToColumn(colscount) + exportRowCount.ToString());256 range.Value2 = datas;257 sheet.Columns.EntireColumn.AutoFit(); // Automatically change the column width258 book.SaveAs(strName, ET.XlFileFormat.xlWorkbookNormal, miss, miss, miss, miss, ET.ETSaveAsAccessMode.etShared, miss, miss, miss, miss);259 book.Close(false, miss, miss);260 books.Close();261 etApp.Quit();262 System.Runtime.InteropServices.Marshal.ReleaseComObject(sheet);263 System.Runtime.InteropServices.Marshal.ReleaseComObject(book);264 System.Runtime.InteropServices.Marshal.ReleaseComObject(books);265 System.Runtime.InteropServices.Marshal.ReleaseComObject(etApp);266 267 GC.Collect();268 }269 catch (Exception ex)270 {271 MessageBox.Show("导出失败,\n1、如果未安装WPS Excel,请导出时尝试选择保存到Microsoft Excel或者文本文档!\n2、请确保导出到的目标文件未打开,否则程序占用可能导致失败。\n3、如已关闭还提示错误,请尝试在任务管理器结束Excel程序。\n系统消息:" + ex.Message, "错误提示");272 return;273 }274 275 }276 else if (saveFileDialog.FilterIndex == 3)277 {278 279 280 FileStream fs = new FileStream(strName, FileMode.OpenOrCreate, FileAccess.Write);281 StreamWriter sw = new StreamWriter(fs);282 sw.BaseStream.Seek(0, SeekOrigin.End);283 string str = "";284 int n = 0;285 for (int i = 0; i < gridView.ColumnCount; i++)286 {287 if (gridView.Columns[i].Visible)288 {289 n++;290 if (n == 1)291 {292 str += gridView.Columns[i].HeaderText.ToString();293 }294 else295 {296 str += "," + gridView.Columns[i].HeaderText.ToString();297 }298 }299 }300 sw.WriteLine(str);301 302 //填充数据303 for (int i = 0; i < gridView.RowCount; i++)304 {305 str = "";306 int m = 0;307 //j也是从1开始 原因如上 每个人需求不一样308 for (int j = 0; j < gridView.ColumnCount; j++)309 {310 if (gridView.Columns[j].Visible)311 {312 m++;313 if (m == 1)314 {315 str += gridView[j, i].Value.ToString();316 }317 else318 {319 str += "," + gridView[j, i].Value.ToString();320 }321 }322 323 }324 sw.WriteLine(str);325 //this.toolStripProgressBar1.Value += 100 / gridView.RowCount;326 }327 328 sw.Flush();329 sw.Close();330 fs.Close();331 332 333 }334 MessageBox.Show("数据已经成功导出!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);335 return;336 //this.toolStripProgressBar1.Value = http://www.mamicode.com/0;>337 338 //System.Diagnostics.Process.Start(strName);339 }340 }341 }342 catch (Exception ex)343 {344 MessageBox.Show("导出失败,\n1、如果未安装Microsoft Excel或者WPS Excel,请导出时尝试选择保存到文本文档!\n2、请确保导出到的目标文件未打开,否则程序占用可能导致失败。\n3、如已关闭还提示错误,请尝试在任务管理器结束Excel程序。\n系统消息:" + ex.Message, "错误提示");345 return;346 }347 }348 //引用命名空间 using Microsoft.Office.Interop.Excel;WPS的ET349 /// <summary>350 /// DataTable导出文件到Microsoft Excel WPS Excel 文本文档351 /// </summary>352 /// <param name="dt"></param>353 /// <param name="fileName"></param>354 /// <param name="sheetName"></param>355 public static void ExportDataTableAsExcel(System.Data.DataTable dt, string fileName, string sheetName)356 {357 //导出到execl 358 try359 {360 SaveFileDialog saveFileDialog = new SaveFileDialog();361 saveFileDialog.Filter = "Microsoft Excel(*.xls)|*.xls|WPS Excel(*.xls)|*.xls|文本文档(*.txt)|*.txt";362 saveFileDialog.FileName = fileName; //dataGridView1.Rows[0].Cells[0].Value.ToString() + "幸运榜单_" + DateTime.Now.ToString("yyyymmddhhmmss") + "";363 saveFileDialog.FilterIndex = 0;364 saveFileDialog.RestoreDirectory = true;365 saveFileDialog.CreatePrompt = true;366 saveFileDialog.Title = "导出文件保存为";367 // saveFileDialog.ShowDialog();368 if (saveFileDialog.ShowDialog() == DialogResult.OK)369 {370 string strName = saveFileDialog.FileName;371 if (strName.Length != 0)372 {373 int rowscount = dt.Rows.Count;374 int colscount = dt.Columns.Count;375 if (rowscount <= 0)376 {377 MessageBox.Show("无数据需要保存 ", "信息", MessageBoxButtons.OK, MessageBoxIcon.Information);378 return;379 }380 381 if (colscount <= 0)382 {383 MessageBox.Show("无数据需要保存 ", "信息", MessageBoxButtons.OK, MessageBoxIcon.Information);384 return;385 }386 if (saveFileDialog.FilterIndex == 1)387 {388 389 if (rowscount > 65536)390 {391 MessageBox.Show("行太多(最大限制为 65536行),不能保存! ", "信息", MessageBoxButtons.OK, MessageBoxIcon.Information);392 return;393 }394 if (colscount > 255)395 {396 MessageBox.Show("列太多(最大限制为 255列), 不能保存! ", "信息", MessageBoxButtons.OK, MessageBoxIcon.Information);397 return;398 }399 try400 {401 402 //this.toolStripProgressBar1.Visible = true;403 System.Reflection.Missing miss = System.Reflection.Missing.Value;404 Microsoft.Office.Interop.Excel.ApplicationClass excel = new Microsoft.Office.Interop.Excel.ApplicationClass();405 excel.Application.Workbooks.Add(true); ;406 excel.Visible = false;//若是true,则在导出的时候会显示EXcel界面。407 if (excel == null)408 {409 MessageBox.Show("Microsoft Excel无法启动!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);410 return;411 }412 Microsoft.Office.Interop.Excel.Workbooks books = (Microsoft.Office.Interop.Excel.Workbooks)excel.Workbooks;413 Microsoft.Office.Interop.Excel.Workbook book = (Microsoft.Office.Interop.Excel.Workbook)(books.Add(miss));414 Microsoft.Office.Interop.Excel.Worksheet sheet = (Microsoft.Office.Interop.Excel.Worksheet)book.ActiveSheet;415 sheet.Name = sheetName;416 417 string[,] datas = new string[rowscount + 1, colscount];418 //生成列名称 这里i是从1开始的 因为我第0列是个隐藏列ID 没必要写进去419 for (int i = 0; i < dt.Columns.Count; i++)420 {421 datas[0, i] = dt.Columns[i].ColumnName.Trim();422 }423 424 //填充数据425 for (int i = 0; i < dt.Rows.Count; i++)426 {427 //j也是从1开始 原因如上 每个人需求不一样428 for (int j = 0; j < dt.Columns.Count; j++)429 {430 431 if (dt.Rows[i][j].GetType() == typeof(string))432 {433 datas[i + 1, j] = "‘" + dt.Rows[i][j].ToString();434 }435 else436 {437 datas[i + 1, j] = dt.Rows[i][j].ToString();438 }439 440 441 }442 //this.toolStripProgressBar1.Value += 100 / gridView.RowCount;443 }444 int exportRowCount = rowscount + 1;445 Microsoft.Office.Interop.Excel.Range range = sheet.get_Range("A1", IndexToColumn(colscount) + exportRowCount.ToString());446 range.Value2 = datas;447 448 sheet.Columns.EntireColumn.AutoFit(); // Automatically change the column width449 450 book.SaveAs(strName, Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookNormal, miss, miss, miss,451 miss, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlShared, miss, miss, miss,452 miss, miss);453 454 //sheet.SaveAs(strName, miss, miss, miss, miss, miss, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, miss, miss, miss);455 book.Close(false, miss, miss);456 books.Close();457 excel.Quit();458 System.Runtime.InteropServices.Marshal.ReleaseComObject(sheet);459 System.Runtime.InteropServices.Marshal.ReleaseComObject(book);460 System.Runtime.InteropServices.Marshal.ReleaseComObject(books);461 System.Runtime.InteropServices.Marshal.ReleaseComObject(excel);462 463 GC.Collect();464 }465 catch (Exception ex)466 {467 MessageBox.Show("导出失败,\n1、如果未安装Microsoft Excel,请导出时尝试选择保存到WPS Excel或者文本文档!\n2、请确保导出到的目标文件未打开,否则程序占用可能导致失败。\n3、如已关闭还提示错误,请尝试在任务管理器结束Excel程序。\n系统消息:" + ex.Message, "错误提示");468 return;469 }470 }471 if (saveFileDialog.FilterIndex == 2)472 {473 474 if (rowscount > 65536)475 {476 MessageBox.Show("行太多(最大限制为 65536行),不能保存! ", "信息", MessageBoxButtons.OK, MessageBoxIcon.Information);477 return;478 }479 if (colscount > 255)480 {481 MessageBox.Show("列太多(最大限制为 255列), 不能保存! ", "信息", MessageBoxButtons.OK, MessageBoxIcon.Information);482 return;483 }484 try485 {486 ET.Application etApp;487 //获取工作表表格488 etApp = new ET.Application();489 etApp.Workbooks.Add(Type.Missing);490 etApp.Visible = false;491 if (etApp == null)492 {493 MessageBox.Show("WPS Excel无法启动!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);494 return;495 }496 System.Reflection.Missing miss = System.Reflection.Missing.Value;497 ET.Workbooks books = (ET.Workbooks)etApp.Workbooks;498 ET.workbook book = (ET.workbook)(books.Add(miss));499 ET.Worksheet sheet = (ET.Worksheet)book.ActiveSheet;500 sheet.Name = sheetName;501 502 string[,] datas = new string[rowscount + 1, colscount];503 //生成列名称 这里i是从1开始的 因为我第0列是个隐藏列ID 没必要写进去504 for (int i = 0; i < dt.Columns.Count; i++)505 {506 datas[0, i] = dt.Columns[i].ColumnName.Trim();507 }508 509 //填充数据510 for (int i = 0; i < dt.Rows.Count; i++)511 {512 //j也是从1开始 原因如上 每个人需求不一样513 for (int j = 0; j < dt.Columns.Count; j++)514 {515 516 if (dt.Rows[i][j].GetType() == typeof(string))517 {518 datas[i + 1, j] = "‘" + dt.Rows[i][j].ToString();519 }520 else521 {522 datas[i + 1, j] = dt.Rows[i][j].ToString();523 }524 }525 //this.toolStripProgressBar1.Value += 100 / gridView.RowCount;526 }527 int exportRowCount = rowscount + 1;528 ET.Range range = sheet.get_Range("A1", IndexToColumn(colscount) + exportRowCount.ToString());529 range.Value2 = datas;530 sheet.Columns.EntireColumn.AutoFit(); // Automatically change the column width531 book.SaveAs(strName, ET.XlFileFormat.xlWorkbookNormal, miss, miss, miss, miss, ET.ETSaveAsAccessMode.etShared, miss, miss, miss, miss);532 book.Close(false, miss, miss);533 books.Close();534 etApp.Quit();535 System.Runtime.InteropServices.Marshal.ReleaseComObject(sheet);536 System.Runtime.InteropServices.Marshal.ReleaseComObject(book);537 System.Runtime.InteropServices.Marshal.ReleaseComObject(books);538 System.Runtime.InteropServices.Marshal.ReleaseComObject(etApp);539 540 GC.Collect();541 }542 catch (Exception ex)543 {544 MessageBox.Show("导出失败,\n1、如果未安装WPS Excel,请导出时尝试选择保存到Microsoft Excel或者文本文档!\n2、请确保导出到的目标文件未打开,否则程序占用可能导致失败。\n3、如已关闭还提示错误,请尝试在任务管理器结束Excel程序。\n系统消息:" + ex.Message, "错误提示");545 return;546 }547 }548 else if (saveFileDialog.FilterIndex == 2)549 {550 551 552 FileStream fs = new FileStream(strName, FileMode.OpenOrCreate, FileAccess.Write);553 StreamWriter sw = new StreamWriter(fs);554 sw.BaseStream.Seek(0, SeekOrigin.End);555 string str = "";556 for (int i = 0; i < dt.Columns.Count; i++)557 {558 if (i == 0)559 {560 str += dt.Columns[i].ColumnName.Trim();561 }562 else563 {564 str += "," + dt.Columns[i].ColumnName.Trim();565 }566 }567 sw.WriteLine(str);568 569 //填充数据570 for (int i = 0; i < dt.Rows.Count; i++)571 {572 str = "";573 //j也是从1开始 原因如上 每个人需求不一样574 for (int j = 0; j < dt.Columns.Count; j++)575 {576 if (j == 0)577 {578 str += dt.Rows[i][j].ToString();579 }580 else581 {582 str += "," + dt.Rows[i][j].ToString();583 }584 585 }586 sw.WriteLine(str);587 //this.toolStripProgressBar1.Value += 100 / gridView.RowCount;588 }589 590 sw.Flush();591 sw.Close();592 fs.Close();593 594 595 }596 MessageBox.Show("数据已经成功导出!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);597 //this.toolStripProgressBar1.Value = http://www.mamicode.com/0;>598 599 //System.Diagnostics.Process.Start(strName);600 }601 }602 }603 catch (Exception ex)604 {605 MessageBox.Show(ex.Message, "导出失败,\n1、如果未安装Microsoft Excel或者WPS Excel,请导出时尝试选择保存到文本文档!\n2、请确保导出到的目标文件未打开,否则程序占用可能导致失败。\n3、如已关闭还提示错误,请尝试在任务管理器结束Excel程序。");606 }607 }
C#批量导入Excel或WPS实现方法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。