Excel.Application excel;
Excel._Workbook xBk;
Excel._Worksheet xSt;
Excel._QueryTable xQt;
string Conn = @"ODBC;DRIVER=SQL Server;SERVER=数据库服务器;UID=sa;PWD=123;DATABASE=数据库名";
string Select = "select * from E003";
try
{
excel = new Excel.ApplicationClass();
excel.Visible = false;
xBk = excel.Workbooks.Add(true);
xSt = (Excel._Worksheet)xBk.ActiveSheet;
xQt = xSt.QueryTables.Add(Conn, xSt.get_Range(excel.Cells[1, 1], excel.Cells[1, 1]), Select);
xQt.Name = "导出";
xQt.FieldNames = true;
xQt.RowNumbers = false;
xQt.FillAdjacentFormulas = false;
xQt.PreserveFormatting = false;
xQt.BackgroundQuery = true;
xQt.RefreshStyle = Excel.XlCellInsertionMode.xlInsertDeleteCells;
xQt.AdjustColumnWidth = true;
xQt.RefreshPeriod = 0;
xQt.PreserveColumnInfo = true;
xQt.Refresh(xQt.BackgroundQuery);
xBk.Saved = true;
// 被呼叫方拒绝接收呼叫。原因是实现IDE自动化操作时,IDE还没有完全准备好,对我们所发出的命令没有时间响应。
// 解决方法。执行命令前,线程暂停一下。差不多要1秒种才可以。然后再调用IDE功能
System.Threading.Thread.Sleep(1000);
xBk.SaveCopyAs(directoryPath + tableName + "_" + dateStr + ".xls");
}
catch (Exception ex)
{
ex.ToString();
}
finally
{
excel = null;
xBk = null;
xSt = null;
xQt = null;
}
Excel._Workbook xBk;
Excel._Worksheet xSt;
Excel._QueryTable xQt;
string Conn = @"ODBC;DRIVER=SQL Server;SERVER=数据库服务器;UID=sa;PWD=123;DATABASE=数据库名";
string Select = "select * from E003";
try
{
excel = new Excel.ApplicationClass();
excel.Visible = false;
xBk = excel.Workbooks.Add(true);
xSt = (Excel._Worksheet)xBk.ActiveSheet;
xQt = xSt.QueryTables.Add(Conn, xSt.get_Range(excel.Cells[1, 1], excel.Cells[1, 1]), Select);
xQt.Name = "导出";
xQt.FieldNames = true;
xQt.RowNumbers = false;
xQt.FillAdjacentFormulas = false;
xQt.PreserveFormatting = false;
xQt.BackgroundQuery = true;
xQt.RefreshStyle = Excel.XlCellInsertionMode.xlInsertDeleteCells;
xQt.AdjustColumnWidth = true;
xQt.RefreshPeriod = 0;
xQt.PreserveColumnInfo = true;
xQt.Refresh(xQt.BackgroundQuery);
xBk.Saved = true;
// 被呼叫方拒绝接收呼叫。原因是实现IDE自动化操作时,IDE还没有完全准备好,对我们所发出的命令没有时间响应。
// 解决方法。执行命令前,线程暂停一下。差不多要1秒种才可以。然后再调用IDE功能
System.Threading.Thread.Sleep(1000);
xBk.SaveCopyAs(directoryPath + tableName + "_" + dateStr + ".xls");
}
catch (Exception ex)
{
ex.ToString();
}
finally
{
excel = null;
xBk = null;
xSt = null;
xQt = null;
}