Excel Interop

时间:2017-11-21 20:09:18

标签: c# excel office-interop excel-interop

我正在用C#编写一个程序来访问Excel Interop界面以创建电子表格。我的程序创建一个工作表,然后在第一行输入一些文本。我想将第一行的字体设置为粗体,作为标题,但事情没有按预期工作。

首先,我为该行创建一个范围对象,然后设置BOLD属性

Range rng1 = ws.Rows[1];
rng1.Style.Font.Bold = true;

这可行,之后我有一个粗体标题行。但是,我注意到电子表格的其余部分也设置为粗体。所以我添加了一些代码将其关闭但它没有按预期工作。代码如下所示:

Range rng2 = ws.Rows[rownum];
rng2.Style.Font.Bold = false;

“rownum”变量从2开始并从12开始递增。它永远不会设置为1.因此,这应该创建第二个与第一个范围零重叠的范围对象。但由于某种原因,这会关闭一切的大胆属性。

看起来整个电子表格受到打开或关闭BOLD的影响。哦,我可以按任何顺序执行这些步骤。

任何想法是什么以及如何解决它?

1 个答案:

答案 0 :(得分:0)

获取要将哪个单元格设置为粗体的单元格的范围。在这种情况下,从第一列到第六列。 (注意Cells [x,y]中的y轴):

Excel.Range titleRange= worksheetName.get_Range((object)worksheet.Cells[1, 1], (object)worksheet.Cells[1, 6]);
titleRange.Font.Bold = System.Drawing.FontStyle.Bold;

不要忘记参考(如果需要):

using System.Drawing;