使用下面行中的格式插入Excel行,而不是上面的行

时间:2015-06-02 13:53:03

标签: c# excel formatting add-on

我需要使用C#在现有的Excel工作表中插入一行,但保留现有的格式。

Excel中的默认行为是使用上面行的格式,在某些情况下,这是我不想要的,因为这可能是不同的。

我确信我已经看到有一种方法可以指定使用下面行的格式而不是上面的行,但我现在无法找到它。

有谁知道如何指定这个?

这是我正在使用的代码:

sheet.Range[string.Format("{0}:{0}", row)]
  .EntireRow
  .Insert(
  Excel.XlInsertShiftDirection.xlShiftDown);

1 个答案:

答案 0 :(得分:2)

您还需要使用CopyOrigin参数。

sheet.Range[string.Format("{0}:{0}", row)]
  .EntireRow
  .Insert(
  Excel.XlInsertShiftDirection.xlShiftDown,
  Excel.XlInsertFormatOrigin.xlFormatFromRightOrBelow
)

有关Insertthat enum的详细信息,请参阅此处。

可以通过录制宏来获取此参数。当您插入行以选择格式来源时,会弹出一个小框。

format options