2016-06-13 4 views
0

初心者はC#でOfficeOpenXMLパッケージを使用しています。私は、次を使用して太字/フィル/私の出力ファイルのセルに接する方法を考え出した:OfficeOpenXMLを使用してExcelで書式設定をC#で変数として保存するにはどうすればよいですか?

worksheet.Cells["B4:E4"].Style.Font.Bold = true; 
worksheet.Cells["B4:E4"].Style.Border.BorderAround(OfficeOpenXml.Style.ExcelBorderStyle.Thin); 
worksheet.Cells["B4:E4"].Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; 
worksheet.Cells["B4:E4"].Style.Fill.BackgroundColor.SetColor(System.Drawing.Color.LightSkyBlue); 

代わりに私がスタイル設定するセルのすべての範囲のためにこれを呼び出すするので、どのように私は保存することができます私の行数を減らすためにこのフォーマットパッケージを変数に入れますか?また、誰かが私にセルをマージする方法を教えてもらえるなら、スーパーメガ・ダブルボーナスポイント。

ありがとうございます!

+0

オンラインセルをマージする方法の例があると、いくつかの本当に良いドキュメント/例があります

void FormatRange(Excel.Range target) { target.Style.Font.Bold = true; target.Style.Border.BorderAround(OfficeOpenXml.Style.ExcelBorderStyle.Thin); target.Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; target.Style.Fill.BackgroundColor.SetColor(System.Drawing.Color.LightSkyBlue); } 

が、その後のような何かをオンラインでも、OpenXMLとClosedXMLを使用することに関して、googleがあなたの終わりに壊れていないと仮定して。 – MethodMan

+0

@MethodMan私は数日間グーグルで行ってきたが、ほとんどの例がEPPlusで行われているようだ。私は自分の検索で正しい方法で質問しているわけではないかもしれませんが、私はこれでかなり新しいですし、テクニカル用語の一部が私を逃げ出します。 –

+1

関数を作成し、引数として範囲アドレスを渡すだけであれば、助けてもらえますか? –

答えて

0

あなたのためにそれを行うための関数を使用します。

List<string> ranges = new List<string> {"A1", "B1", "C1:C5"}; //etc... 

foreach(string address in ranges.ToArray()) 
{ 
    FormatRange(Excel.Range(worksheet.Cells[address])); 
} 
+1

これはまさに私が探していたものです、本当に感謝しています@MacroMan –

関連する問題