2016-04-22 27 views
2

どのようにして、入力セルの最大長に基づいてセルに自動サイズを設定できますか?EPPLUS AutoFitセル

using (rng = workSheet.Cells["A1:G1"]) 
{ 
    rng.Style.Font.Bold = true; 
    rng.Style.Fill.PatternType = ExcelFillStyle.Solid; 
    rng.Style.Fill.BackgroundColor.SetColor(Color.DarkBlue); 
    rng.Style.Font.Color.SetColor(Color.White); 

} 

using (ExcelRange col = workSheet.Cells[2, 6, 7, 7]) 
{ 
    col.Style.Numberformat.Format = "yyyy-mm-dd HH:mm"; 
    col.Style.HorizontalAlignment = ExcelHorizontalAlignment.Right; 

} 

for (int i = 1; i <= a; i++) 
{ 
    workSheet.Cells["A1"].Value = "RU_ID"; 
    workSheet.Cells["B1"].Value = "COR_REQ_ID"; 
    workSheet.Cells["C1"].Value = "RU_NAME"; 
    workSheet.Cells["D1"].Value = "PARENT_RU_NAME"; 
    workSheet.Cells["E1"].Value = "ADJUSTMENT_STATE"; 
    workSheet.Cells["F1"].Value = "COR_START"; 
    workSheet.Cells["G1"].Value = "COR_END"; 
} 
... 

rng.AutoFitColumns(); 
string path = @"D:\excel\test.xlsx"; 
Stream stream = File.Create(path); 
excel.SaveAs(stream); 
stream.Close(); 
byte[] data = File.ReadAllBytes(path); 

} 

AutoFitColumnがやっている唯一のものは、細胞を増やすために何か」、私は「良いもの」として「STH」としてヘッダと入力を持っているかのように、ヘッダのサイズにセルをもたらすことですautoFitColumnより "size"は、 "STH"に基づいてサイズを設定します。 "セルサイズを増加させるもの"ではありません。 ご協力いただきありがとうございます。あなたのラインで

答えて

5

ルック:あなたはそうEPPlusは、列の幅を決定するために細胞のみを使用しているA1:G1あなたのヘッダの範囲にAutoFitColumnsを呼んでいる

using (rng = workSheet.Cells["A1:G1"]) 
... 
rng.AutoFitColumns(); 

注意してください。

はただ、代わりにこれを行う:効率に対して何ら現実的な懸念が存在しないので、

workSheet.Cells.AutoFitColumns(); 

はEpplusでCellsだけなので、実際の値を持つ細胞を含みます。

+0

ありがとうございました。私はそれを考えなかった。 :D –

関連する問題