﻿# 如何用 C# 將資料匯出到 Excel

我們常常會做「匯出」的功能，但是匯出的時候有一種狀況會出問題，就是如果資料的第一個字元是 0 但是你必須要留著的話，用 CSV 格式匯出再用 Excel 打開後，前面的 0 就會不見（被 Excel 視為是數字格式而吃掉了）。

這裡有一些連結說明各種不同的作法，蠻不錯的！ 

> A Very Easy to Use Excel XML Export Library  
> [http://www.codeproject.com/KB/office/excelxmllibrary.aspx](http://www.codeproject.com/KB/office/excelxmllibrary.aspx) 
> 
> How to transfer data to an Excel workbook by using Visual C# 2005 or Visual C# .NET  
> [http://support.microsoft.com/kb/306023/en-us](http://support.microsoft.com/kb/306023/en-us)
> 
> 如何將資料傳送至 Excel 活頁簿藉由使用 Visual C# 2005 或 Visual C# . NET  
> [http://support.microsoft.com/kb/306023/zh-tw](http://support.microsoft.com/kb/306023/zh-tw)
> 
> Considerations for server-side Automation of Office  
> [http://support.microsoft.com/kb/257757/en-us](http://support.microsoft.com/kb/257757/en-us)
> 
> Office 伺服器端自動化的考量因素  
> [http://support.microsoft.com/kb/257757/zh-tw](http://support.microsoft.com/kb/257757/zh-tw)
> 
> How to automate Microsoft Excel from Visual Basic .NET  
> [https://web.archive.org/web/20150219101145/http://support.microsoft.com:80/kb/301982?](https://web.archive.org/web/20150219101145/http://support.microsoft.com:80/kb/301982?)
> 
> 如何從 Visual Basic . NET Microsoft Excel 自動化  
> [https://web.archive.org/web/20150219101145/http://support.microsoft.com:80/kb/301982?](https://web.archive.org/web/20150219101145/http://support.microsoft.com:80/kb/301982?)

當然還有其他方式，我以前用的方式是在 Excel 中開一個新檔案，把你資料庫中的欄位都打在第一列，然後輸入一筆資料到第二列，當然也可以新增好幾個工作表(Worksheet)，之後另存新檔成 XML 格式，你再去看這個檔案的內容(XML格式)，格式很容易了解，你照著這個格式重新將從資料庫讀出來的資料轉成這個 Excel XML 格式就可以指定每一個儲存格的格式了!
