类似于:
Microsoft.Office.Interop.Excel.QueryTables m_objQryTables = null;
Microsoft.Office.Interop.Excel.QueryTable m_objQryTable = null;
Microsoft.Office.Interop.Excel.Application m_objExcel = null;
Microsoft.Office.Interop.Excel.Workbook m_objBook = null;
Microsoft.Office.Interop.Excel.Sheets m_objSheets = null;
Microsoft.Office.Interop.Excel.Worksheet m_objSheet = null;
Microsoft.Office.Interop.Excel.Range m_objRange = null;
m_objExcel = new Microsoft.Office.Interop.Excel.ApplicationClass();
m_objBook = m_objExcel.Workbooks.Add(1);
m_objSheets = (Microsoft.Office.Interop.Excel.Sheets)m_objBook.Worksheets;
m_objSheet = (Microsoft.Office.Interop.Excel.Worksheet)m_objSheets.get_Item(1);
m_objRange = m_objSheet.get_Range("A1", Type.Missing);
m_objQryTables = m_objSheet.QueryTables;
SqlConn sqlcon = new SqlConn();
string conn = "Provider=SQLOLEDB.1;" + sqlcon.GetConnString(sys);
m_objQryTable = (Microsoft.Office.Interop.Excel.QueryTable)m_objQryTables.Add("OLEDB;" + conn, m_objRange, sqlstr);
m_objQryTable.RefreshStyle = Microsoft.Office.Interop.Excel.XlCellInsertionMode.xlInsertEntireRows;
m_objQryTable.Refresh(false);
m_objExcel.DisplayAlerts = false;
m_objBook.Saved = true;
m_objBook.SaveAs(str_path, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlExclusive, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
m_objBook.Close(false, Type.Missing, false);
m_objExcel.Quit();
不过这个是通过Sql直接查询导出的,请问如何实现呢?
感谢。。。
3 个解决方案
#1
网上搜有很多,datatable转Excel的方法
#2
http://www.cnblogs.com/moonache/p/5193157.html
#3
NPOI例子很多
#1
网上搜有很多,datatable转Excel的方法
#2
http://www.cnblogs.com/moonache/p/5193157.html
#3
NPOI例子很多