Hic. Đây là code để xuất dữ liệu ra dạng như thế này :
Ho ten : Tham so
Dia chi : Tham so
-------Danh muc mat hang------
STT Ten hang SL Don gia Thanh tien
A A 1 1 1
-------------------------------------
Yêu cầu : File add reference thư viện Microsoft.Excel Library 11/12 trong phần COM của VS2005.
Đây là code :
Tham so dau vao :
a. Mang gia tri cua khach hang
b. Danh mục các sản phẩm trong giỏ hàng.
c. Tổng tiền
using System;
using System.Data;
using XLS = Microsoft.Office.Interop.Excel;
using System.Collections.Generic;
using Model;
///
/// Summary description for ExcelHelp
///
public class ExcelHelp
{
public ExcelHelp()
{
//
// TODO: Add constructor logic here
//
}
public void Export(string filePath, string[] para, IList ilist,float total)
{
//Create exe appliaction
XLS.Application objExcel = new Microsoft.Office.Interop.Excel.Application();
objExcel.Application.DisplayAlerts = false;
//Tao boook
XLS.Workbook objBook = objExcel.Workbooks.Add(XLS.XlWBATemplate.xlWBATWorksheet);
try
{
XLS.Worksheet objSheet = (XLS.Worksheet)objBook.ActiveSheet;
objSheet.Name = "Test";
//Save customer infor
objSheet.get_Range( "A2", "A2").Value2= "Họ và tên :";
objSheet.get_Range( "A3", "A3").Value2= "Địa chỉ giao hàng :";
objSheet.get_Range( "A4", "A4").Value2= "Ngày giao hàng :";
objSheet.get_Range( "A5", "A5").Value2= "Hình thức thanh toán :";
objSheet.get_Range( "A6", "A6").Value2= "Di động :";
objSheet.get_Range( "A7", "A7").Value2= "Email :";
objSheet.get_Range( "A8", "A8").Value2= "Ghi chú :";
objSheet.get_Range( "B2", "B2").Value2= para[0];
objSheet.get_Range( "B3", "B3").Value2= para[1];
objSheet.get_Range( "B4", "B4").Value2= para[2];
objSheet.get_Range( "B5", "B5").Value2= para[3];
objSheet.get_Range( "B6", "B6").Value2= para[4];
objSheet.get_Range( "B7", "B7").Value2= para[5];
objSheet.get_Range( "B8", "B8").Value2= para[6];
// Luu thong tin gio hang
//Cot tieu de gio hang
objSheet.get_Range( "A10", "A10").Value2= "STT";
objSheet.get_Range( "B10", "B10").Value2= "Sản phẩm";
objSheet.get_Range( "C10", "C10").Value2= "Số lượng";
objSheet.get_Range( "D10", "D10").Value2= "Đơn giá";
objSheet.get_Range( "E10", "E10").Value2= "Thành tiền";
int i = 11;
for (int k = 0; k < ilist.Count; k++)
{
objSheet.get_Range( "A" + i.ToString(), "A" + i.ToString()).Value2= k + 1;
objSheet.get_Range( "B" + i.ToString(), "B" + i.ToString()).Value2= string.IsNullOrEmpty(ilist[k].ProductName_Vi) ? ilist[k].ProductName_Vi : ilist[k].ProductName_En;
objSheet.get_Range( "C" + i.ToString(), "C" + i.ToString()).Value2= ilist[k].Amount.ToString();
objSheet.get_Range( "D" + i.ToString(), "D" + i.ToString()).Value2= ilist[k].Price.ToString();
objSheet.get_Range( "E" + i.ToString(), "E" + i.ToString()).Value2= ilist[k].Amount * ilist[k].Price;
i++;
}
i++;
objSheet.get_Range( "B" + i.ToString(), "B" + i.ToString()).Value2= "Tổng giá trị thanh toán: " + total.ToString() +" VND";
//ket thuc
//objSheet.Cells.AutoFit();
objBook.SaveAs(filePath,XLS.XlFileFormat.xlXMLSpreadsheet,null,null,false,false,Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlExclusive,null,null,null,null,null);
}
catch (Exception ex)
{
throw new Exception("Lỗi trong phương thức Excel.LoadData :" + ex.Message);
}
finally
{
objBook.Close(null, null, null);
objBook = null;
objExcel.Quit();
objExcel = null;
//Tat tien trinh cua Excel
//Lam nhu the se tat bot cai Ẽcel
System.Diagnostics.ProcessStartInfo infor = new System.Diagnostics.ProcessStartInfo("taskkill", " /f /im EXCEL.EXE");
infor.CreateNoWindow = false;
//infor.
infor.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
System.Diagnostics.Process.Start(infor);
GC.Collect();
}
}
}