こんにちは、Excel を作成する必要があるアプリケーションを作成しています。アプリケーションへの参照として Microsoft Excel 12.Object Library を追加しました。しかし、私のサーバーには Msoffice がインストールされていませんでした。では、そのサーバーでExcelを作成するにはどうすればよいですか。
4 に答える
EPPlusはシンプルで強力で、office/excel を Excel 2007 スプレッドシート (xlsx ファイル) と共にインストールしなくても機能するため、お勧めできます。ライセンスモデルはLGPLです。
var excel = new ExcelPackage();
excel.File = new System.IO.FileInfo(@"C:\Temp\AnExcelFile.xlsx");
if (excel.File.Exists)
excel.Load(excel.File.Open(FileMode.Open));
ExcelWorksheet ws = excel.Workbook.Worksheets.Add("Worksheet-Name");//must be unique and less than 31 characters long
ws.Cells[26, 1].LoadFromDataTable(dt, true); //loading from DataTable, the 2.Parameter is PrintHeaders
ws.Cells[26, 1].LoadFromCollection(query, true); //loading by LINQ-Query also possible
excel.Save();
Excelファイルを作成できるサードパーティのライブラリがいくつかあります.たとえば、ComponentOneが作成していると思います.Excelファイルを作成できるライブラリがいくつかあります.ExcelをインストールしなくてもExcelファイルを作成できます.サーバー。
別の解決策は、Excel が読み取れる他の形式 (CSV など) を作成することです。CSV を使用するということは、Excel が提供する派手な書式設定が得られないことを意味しますが、少なくともサード パーティ コンポーネントのライセンスを取得したり、サーバーに Excel をインストールしたりする必要はありません。
openxml と呼ばれる新しいオフィス形式のドキュメントを作成する必要がある場合は、http://www.microsoft.com/en-us/download/details.aspx?id=5124 を参照してください。
MS Office がインストールされていない場合でも、ms オブジェクトを作成する方法があります。追加されたライブラリは、インターフェイス ラッパーにすぎません。