EPPlus 文本与合并单元格中心的垂直对齐不起作用

Gur*_*eet 3 c# asp.net excel epplus

我试图将文本垂直居中对齐,但它不起作用。文本出现在合并单元格的底部。这是不起作用的最小代码。

// get handle to the existing worksheet
ExcelWorksheet worksheet = xlPackage.Workbook.Worksheets.Add("mysheet");

//[row,col]
worksheet.Cells[1, 1].Value = "a1";
worksheet.Cells[2, 1].Value = "a1";
worksheet.Cells[3, 1].Value = "a1";
worksheet.Cells[4, 1].Value = "a1";
worksheet.Cells[5, 1].Value = "a1";
worksheet.Cells[6, 1].Value = "a1";

//comment out below six lines to make it work
worksheet.Cells[1, 2].Value = "11";
worksheet.Cells[2, 2].Value = "12";
worksheet.Cells[3, 2].Value = "13";
worksheet.Cells[4, 2].Value = "14";
worksheet.Cells[5, 2].Value = "15";
worksheet.Cells[6, 2].Value = "16";
//comment out above six lines to make it work

worksheet.Cells["A1:A6"].Merge = true;
worksheet.Cells["A1:A6"].Style.VerticalAlignment = ExcelVerticalAlignment.Center;

xlPackage.Save();
Run Code Online (Sandbox Code Playgroud)

请帮忙。

在最后添加这些行使其工作:

worksheet.Column(1).Style.VerticalAlignment = ExcelVerticalAlignment.Center; worksheet.Column(2).Style.VerticalAlignment = ExcelVerticalAlignment.Center;

这意味着我必须居中对齐所有列才能居中对齐第一列。

abd*_*med 7

尝试这个...

using OfficeOpenXml.Style;
worksheet.Cells["A1:A6"].Style.VerticalAlignment = 
ExcelVerticalAlignment.Center;
Run Code Online (Sandbox Code Playgroud)

或...工作表.Cells["A1:A6"]。= OfficeOpenXml.Style.ExcelVerticalAlignment.Center;

  • 对于登陆此处的 Powershell 用户: `$worksheet.Cells[$worksheet.Dimension.Address].Style.VerticalAlignment = [OfficeOpenXml.Style.ExcelVerticalAlignment]::Top $worksheet.Cells[$worksheet.Dimension.Address].Style .Horizo​​ntalAlignment = [OfficeOpenXml.Style.ExcelHorizo​​ntalAlignment]::左` (2认同)