【发布时间】:2014-12-23 00:02:26
【问题描述】:
这是我将行插入 Excel 工作表的 C# 代码:
for (var j = 0; j < dummies.Count; j++)
{
mySheet.Range[myRange].Insert(Excel.XlInsertShiftDirection.xlShiftDown);
}
那里没有什么惊天动地的。
但是,如果插入下方的某一行与其他行的高度不同,则该位置的新行似乎会保持相同的高度,向下移动的行也是如此。
例如,在代码运行之前,所有行都是正常高度,除了 11 是其他行高度的两倍。
如果我在第 7 行插入 10 行,结果是第 11 行和第 21 行是双倍高度。
在上方插入 1 行会使 11 和 12 成为两倍高。
插入 2 行对第 11 行和第 13 行等产生相同的结果。
所以原来的双高行似乎总是保持它的高度,即使高度也跟随向下移动的行。
有没有办法可以指定当我插入一行时,行高不应该落后?
[编辑] 如果我手动插入一行,一切正常。 [/编辑]
【问题讨论】:
-
你试过设置NamedRange.RowHeight变量吗?
-
是的,我可以这样更正行高。不幸的是,我不一定知道每次都会影响哪些行。
-
如何创建一个空白行并插入它而不是使用
Excel.XlInsertShiftDirection.xlShiftDown? -
我认为这就是
.Insert方法的作用。好的,谢谢,我将研究插入明确定义的行。 -
我似乎找不到如何做到这一点。另外我认为它不会解决问题,因为插入的行不一定是错误的。
标签: c# excel excel-addins