1,说明:
先添加COM对像的引用:右击References => Add Reference => COM => 填加Microsoft Excel 11.0 Object Library
2,程序示例:
using
System.Data;
using
Excel
=
Microsoft.Office.Interop.Excel;
//
为方便程序引用,起Excel为别名
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
namespace
TEST
![](https://i-blog.csdnimg.cn/blog_migrate/34031c708bfe702fe82d01ff5c6593aa.gif)
{
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
public class _TEST
![](https://i-blog.csdnimg.cn/blog_migrate/3112b7b6526db5bc83e275260ae60525.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/f2671b7f42ce505d9bf55a7a0ca257fb.gif)
{
private DataTable ReadFromXLS(string s_FileName)
![](https://i-blog.csdnimg.cn/blog_migrate/3112b7b6526db5bc83e275260ae60525.gif)
{
DataTable dtTemp = new DataTable();
DataColumn column;
column = new DataColumn("MS_PART");
dtTemp.Columns.Add(column);
column = new DataColumn("PART_DESC");
dtTemp.Columns.Add(column);
column = new DataColumn("TYPE");
dtTemp.Columns.Add(column);
column = new DataColumn("STATUS");
dtTemp.Columns.Add(column);
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
Excel.Application m_xlsApp = null;
Excel.Workbook m_Workbook = null;
Excel.Worksheet m_Worksheet = null;
Excel.Range m_RangeMSPart = null;
Excel.Range m_RangePartDesc = null;
Excel.Range m_RangeType = null;
Excel.Range m_RangeStatus = null;
try
![](https://i-blog.csdnimg.cn/blog_migrate/3112b7b6526db5bc83e275260ae60525.gif)
{
object objOpt = System.Reflection.Missing.Value;
m_xlsApp = new Excel.Application();
m_Workbook = m_xlsApp.Workbooks.Open(s_FileName, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt, objOpt);
m_Worksheet = (Excel.Worksheet)m_Workbook.Worksheets.get_Item(1);
DataRow newRow;
for (int i = 1; i <= m_Worksheet.UsedRange.Rows.Count; i++)
![](https://i-blog.csdnimg.cn/blog_migrate/3112b7b6526db5bc83e275260ae60525.gif)
{
//此种方式取得单元格也可以
//m_RangeMSPart = (Excel.Range)m_Worksheet.Cells[i, 1];
//m_RangePartDesc = (Excel.Range)m_Worksheet.Cells[i, 2];
//m_RangeType = (Excel.Range)m_Worksheet.Cells[i, 3];
//m_RangeStatus = (Excel.Range)m_Worksheet.Cells[i, 4];
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
m_RangeMSPart = m_Worksheet.get_Range("A" + i.ToString(), objOpt);
m_RangePartDesc = m_Worksheet.get_Range("B" + i.ToString(), objOpt);
m_RangeType = m_Worksheet.get_Range("C" + i.ToString(), objOpt);
m_RangeStatus = m_Worksheet.get_Range("D" + i.ToString(), objOpt);
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
newRow = dtTemp.NewRow();
newRow["MS_PART"] = m_RangeMSPart.Value2.ToString();
newRow["PART_DESC"] = m_RangePartDesc.Value2.ToString();
newRow["TYPE"] = m_RangeType.Value2.ToString();
newRow["STATUS"] = m_RangeStatus.Value2.ToString();
dtTemp.Rows.Add(newRow);
}
}
catch (Exception exc)
![](https://i-blog.csdnimg.cn/blog_migrate/3112b7b6526db5bc83e275260ae60525.gif)
{
throw exc;
}
finally
![](https://i-blog.csdnimg.cn/blog_migrate/3112b7b6526db5bc83e275260ae60525.gif)
{
m_xlsApp.Quit();
m_xlsApp = null;
}
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
return dtTemp;
}
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
}
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
}