1.先要引用dll文件,可以直接使用vs自帶的包管理,如下圖:

輸入 EPPlus

我這里是安裝過了的所以這里顯示的是卸載而不是安裝。
安裝成功了之后會看到這個dll文件

代碼如下:
//導出Excel protected void BtnMemExcel_Click(object sender, EventArgs e) { Mem bllMember = new Mem(); int Counts = NetPagerParameter.RecordCount; string strSql = QueryCondition(); strSql += "and Mem.MemShopID = SysShop.ShopID and Mem.MemLevelID = MemLevel.LevelID and Mem.MemUserID = SysUser.UserID"; strSql += (" and Mem.MemShopID =SysShopMemLevel.ShopID and SysShopMemLevel.MemLevelID=MemLevel.LevelID "); DataTable db = bllMember.GetListSP(100000, 1, out Counts, PubFunction.GetShopAuthority(_UserShopID, "MemShopID", strSql)).Tables[0];//將數據填充到table中 //核心代碼 using (ExcelPackage package = new ExcelPackage()) { ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("Sheet"); worksheet.Cells[1, 1].Value = "會員卡號"; worksheet.Cells[1, 2].Value = "會員姓名"; worksheet.Cells[1, 3].Value = "會員余額" + DateTime.Now.ToString("yyyy-MM-dd HH:mmssffff"); for (int i = 2; i < db.Rows.Count + 2; i++) { worksheet.Cells[i, 1].Value = db.Rows[i - 2]["MemCard"]; worksheet.Cells[i, 2].Value = db.Rows[i - 2]["MemName"]; worksheet.Cells[i, 3].Value = db.Rows[i - 2]["MemMobile"]; worksheet.Cells[i, 4].Value = db.Rows[i - 2]["MemBirthday"]; worksheet.Cells[i, 5].Value = db.Rows[i - 2]["MemPoint"]; worksheet.Cells[i, 6].Value = db.Rows[i - 2]["MemConsumeMoney"]; worksheet.Cells[i, 7].Value = db.Rows[i - 2]["ShopName"]; } var data = package.GetAsByteArray(); //保存和歸來的Excel文件作為一個ByteArray HttpResponse response = HttpContext.Current.Response; Response.Clear(); //輸出頭文件 Response.AddHeader("content-disposition", "attachment; filename=會員信息.xlsx"); Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; Response.BinaryWrite(data); Response.Flush(); Response.End(); //package.Save();//這個方法是直接下載到本地 } }
