2016-06-17 1 views
1

データベースからExcelにデータをエクスポートする簡単なNuGetパッケージやその他の方法を知っている人はいますか?私はいくつかのテーブルを持っていて、それぞれが別のワークシートにエクスポートしたいのですが、同じExcelファイルにエクスポートします。ASP.NET MVCを使用してデータベースからデータをExcelシートにエクスポートするにはどうすればいいですか?

また、後でファイルExcelからデータベースにデータをインポートしたいと思います。 両方の操作が異なるライブラリである可能性があります。

私はすでに試しましたthisしかし、それは動作しません。


@EDITは - ここで

を解くいくつかの有用なリンクです。私はいつかは役立つだろう願って誰か:)

http://epplus.codeplex.com/

支払われ、無料またはクライアントサイド変換ソリューション、サーバーサイドの変換ソリューションなど、いくつかのオプションがあります

http://techbrij.com/export-excel-xls-xlsx-asp-net-npoi-epplus

+0

この質問に投票して悲しい、これは有効な質問です。将来他の人に役立つように私に投票をさせてください。 –

+0

@AbhimanyuKumarVatsa、これは有効な質問ではありません。それはSOの話題ではありません。ここで受け入れ可能なことを理解するためにヘルプファイルを読むことをお勧めします。 –

+0

@StephenMuecke私は2つの質問を見ていますが、話題はありません。私は新人が下投票だけでなく投稿を編集するべきだと感じています。または、彼に編集の機会を与えるためにいくつかのコメントを追加してください。私はまだ、本当のコミュニティの男が、無視しないことを示唆していると思います。 –

答えて

1

このコードはEPPlusから取得しても便利あなたの質問のため::

private void ExcelExport(DataTable table) 
     { 
      using (ExcelPackage packge = new ExcelPackage()) 
      { 
       //Create the worksheet 
       ExcelWorksheet ws = packge.Workbook.Worksheets.Add("Demo"); 

       //Load the datatable into the sheet, starting from cell A1. Print the column names on row 1 
       ws.Cells["A1"].LoadFromDataTable(table, true); 

       //Format the header for column 1-3 
       using (ExcelRange range = ws.Cells["A1:C1"]) 
       { 
        range.Style.Font.Bold = true; 
        range.Style.Fill.PatternType = ExcelFillStyle.Solid;      //Set Pattern for the background to Solid 
        range.Style.Fill.BackgroundColor.SetColor(Color.FromArgb(79, 129, 189)); //Set color to dark blue 
        range.Style.Font.Color.SetColor(Color.White); 
       } 

       //Example how to Format Column 1 as numeric 
       using (ExcelRange col = ws.Cells[2, 1, 2 + table.Rows.Count, 1]) 
       { 
        col.Style.Numberformat.Format = "#,##0.00"; 
        col.Style.HorizontalAlignment = ExcelHorizontalAlignment.Right; 
       } 

       //Write it back to the client 
       Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; 
       Response.AddHeader("content-disposition", "attachment; filename=ExcelExport.xlsx"); 
       Response.BinaryWrite(packge.GetAsByteArray()); 
      } 
     } 
+1

外部リソースへのリンクはありませんが、ここでコード/答えを投稿してください。外部リンクはしばしば死ぬ。 –

+0

私はこのlibをほんの数秒前に見つけました。しかし私はあなたのポストに答えてマークします。コードの良い説明のために。 Btw。書くのを忘れた - これは 'EPPlus'のlibです。だからあなたの答えを編集:) – DiPix

0

サーバーに影響を与えずにクライアント側にエクスポートしたい場合は、意思決定が必要です。ここでデモ(実行中)ソリューションを紹介します。

http://www.itorian.com/2015/05/export-table-data-into-excel-file.html

結果]タブをクリックし、次に「Excelにエクスポートテーブルデータ」ボタンをクリックします。これが役に立ちそうなら、これを答えとして記入してください。

編集

あなたが述べたように、あなたは別のExcelのページに表をエクスポートする必要があります(ただし、同じファイルで)、これはあなたのために動作しますhttp://www.aspsnippets.com/Articles/Export-DataSet-DataTables-to-multiple-Excel-Sheets-Worksheets-in-ASPNet-using-C-and-VBNet.aspx

+0

私が言ったように、私はビューからのデータベース(DOM)からのデータが必要です。そして、私は自由なオプションを好みます。 – DiPix

+0

はいこれも簡単ですが、コードを調べる前にこの投稿を読んでデモを試してみてくださいhttp://www.aspsnippets.com/Articles/Export-DataSet-DataTables-to-multiple-Excel-Sheets-Worksheets-in- ASPNet-using-C-and-VBNet.aspx –

関連する問題