如何使用 C# 获取 Excel 单元格内容以右对齐?
How can I get Excel cell contents to right justify using C#?
我动态创建的电子表格的一部分如下所示:
起初,两个货币值(边界列内四行的每个块中的第二行和第三行)(默认情况下)从右侧偏移一点,如您所见,第二个货币值/第三个现在是行。
因此,两个货币行与第一行 (int) 和最后 (%) 行不太对齐。
我希望它们都紧贴块右侧的垂直边框,例如 int 和 % 行。
我尝试为第一个货币值/第二行添加这段代码,试图证明它是正确的,希望它能证明正确:
monthPurchasesCell.HorizontalAlignment = XlVAlign.xlVAlignJustify;
...但是,正如您在屏幕截图片段中所见,它的作用恰恰相反(左对齐)。没有"xlVAlignJustifyRight"左右。
在上下文中,在一个月块中显示四行的代码是:
private void AddMonthData(int packages, decimal purchases, decimal avgPrice, double percent, int colToPopulate)
{
var monthPackagesCell = (Range)_xlSheet.Cells[_curDescriptionTopRow, colToPopulate];
monthPackagesCell.Value2 = packages.ToString("N0", CultureInfo.CurrentCulture);
var monthPurchasesCell = (Range)_xlSheet.Cells[_curDescriptionTopRow + 1, colToPopulate];
monthPurchasesCell.Value2 = purchases.ToString("C", CultureInfo.CurrentCulture);
monthPurchasesCell.HorizontalAlignment = XlVAlign.xlVAlignJustify;
var monthAvgPriceCell = (Range)_xlSheet.Cells[_curDescriptionTopRow + 2, colToPopulate];
monthAvgPriceCell.Value2 = avgPrice.ToString("C", CultureInfo.CurrentCulture);
var monthPercentOfTotalCell = (Range)_xlSheet.Cells[_curDescriptionTopRow + 3, colToPopulate];
monthPercentOfTotalCell.Value2 = percent.ToString("P", CultureInfo.CurrentCulture);
}
我怎样才能使货币值向右对齐?
我认为你必须使用 XlHAlign 进行水平对齐。
我动态创建的电子表格的一部分如下所示:
起初,两个货币值(边界列内四行的每个块中的第二行和第三行)(默认情况下)从右侧偏移一点,如您所见,第二个货币值/第三个现在是行。
因此,两个货币行与第一行 (int) 和最后 (%) 行不太对齐。
我希望它们都紧贴块右侧的垂直边框,例如 int 和 % 行。
我尝试为第一个货币值/第二行添加这段代码,试图证明它是正确的,希望它能证明正确:
monthPurchasesCell.HorizontalAlignment = XlVAlign.xlVAlignJustify;
...但是,正如您在屏幕截图片段中所见,它的作用恰恰相反(左对齐)。没有"xlVAlignJustifyRight"左右。
在上下文中,在一个月块中显示四行的代码是:
private void AddMonthData(int packages, decimal purchases, decimal avgPrice, double percent, int colToPopulate)
{
var monthPackagesCell = (Range)_xlSheet.Cells[_curDescriptionTopRow, colToPopulate];
monthPackagesCell.Value2 = packages.ToString("N0", CultureInfo.CurrentCulture);
var monthPurchasesCell = (Range)_xlSheet.Cells[_curDescriptionTopRow + 1, colToPopulate];
monthPurchasesCell.Value2 = purchases.ToString("C", CultureInfo.CurrentCulture);
monthPurchasesCell.HorizontalAlignment = XlVAlign.xlVAlignJustify;
var monthAvgPriceCell = (Range)_xlSheet.Cells[_curDescriptionTopRow + 2, colToPopulate];
monthAvgPriceCell.Value2 = avgPrice.ToString("C", CultureInfo.CurrentCulture);
var monthPercentOfTotalCell = (Range)_xlSheet.Cells[_curDescriptionTopRow + 3, colToPopulate];
monthPercentOfTotalCell.Value2 = percent.ToString("P", CultureInfo.CurrentCulture);
}
我怎样才能使货币值向右对齐?
我认为你必须使用 XlHAlign 进行水平对齐。