1

私のデータは IEnumerable オブジェクトに保持されており、それを Excel のテーブルに入力したいと考えています。

基本的に、データを Excel シートにエクスポートすることはできますが、よりエレガントな方法でテーブルをエクスポートすることはわかりません。

これは私が持っているものです:

 //Populate column names
 String[] columnNames = {"val1", "val2", "val3", "val4", "val5"};
 for (int p = 1, l = 1; l <= 5;l++)
 {
           xlWorkSheet.Cells[p, l] = columnNames[l-1]; 
 }

 //Entries is an IEnumerable object
 int i = 1;
 foreach (var e in Entries)
 {
            int j = 1;
            xlWorkSheet.Cells[i, j] = e.val1; j++;
            xlWorkSheet.Cells[i, j] = e.val2; j++;
            xlWorkSheet.Cells[i, j] = e.val3; j++;
            xlWorkSheet.Cells[i, j] = e.val4; j++;
            xlWorkSheet.Cells[i, j] = e.val5; j++; 
            i++; 
  }

このConvert IEnumerable to DataTableのように IEnumerable から datatable にデータを変換することを考えていましたが、不必要な複雑さの余分なレイヤーが導入されると思いました。

あなたの考えは何ですか?

ありがとう

4

1 に答える 1

2

Excel出力の書式設定にはEPPlusを強くお勧めします。私は最近これをしなければならず、さまざまなアプローチを見ましたが、これが最高でした!

出力に関しては、何を達成しようとしているのかによって異なります。

ドキュメントから、EPPlus はサポートしています....

  • EPPlus は以下をサポートします。
  • セル範囲
  • セルのスタイル設定 (境界線、色、塗りつぶし、フォント、数値、配置)
  • チャート
  • ピクチャー
  • コメント
  • テーブル
  • 保護
  • 暗号化
  • ピボットテーブル
  • データ検証
  • 条件付き書式
  • VBA
  • もっとたくさん...

編集:質問がエレガントなエクスポート方法に関するものであることに気付きました。その場合、すでに行っている方法に大きな問題はありません。しかし、Excel 側での書式設定については、(ほとんど無関係ですが一部の人にとっては役立つ) 投稿を支持します。:)

于 2013-03-21T12:37:01.820 に答える