3

我在 Excel 工作表中复制和插入行,如下所示:

   while (rowsToAdd > 0)
   {
      // copy the existing row
      insertionCell.EntireRow.Copy(Type.Missing);

      // location of the new row
      Range newRow = insertionCell.EntireRow.get_Offset(1, 0).EntireRow;

      // insert the new row
      newRow.Insert(XlInsertShiftDirection.xlShiftDown, Type.Missing);

      rowsToAdd--;
   }

我遇到的问题是,有时,我在最初复制的行周围留下了一个选择框。

有没有办法可以取消选择框(通常使用 Escape 键的方式?)

4

3 回答 3

3

Adding

myExcelApplication.CutCopyMode = XlCutCopyMode.xlCopy;

seems to do the trick, though the documentation does not explain it very well, and seems to be wrong, since bools are mentioned.

于 2012-09-12T02:12:03.770 回答
3

在 VBA 中是Application.CutCopyMode = False

于 2012-09-12T01:53:44.167 回答
0

我知道它已经很老了,但是由于我在将一行复制到另一行时遇到了一些问题,并且当我得到了正确的解决方案时,我现在很高兴分享它,以防万一它可以解决您的问题(考虑复制行而不是插入一个)。

这是解决方案:

Microsoft.Office.Interop.Excel.Range xlSourceRow;
Microsoft.Office.Interop.Excel.Range xlNewRow;
xlSourceRow.Copy(xlNewRow);

使用此解决方案可防止在您的 MS-Excel 文件中获得任何选择。

于 2017-10-19T09:10:45.770 回答