复制行

来源:互联网 发布:知乎中药学读后感 编辑:程序博客网 时间:2024/05/17 04:59

/// <summary>
  /// 复制行(在指定行下面复制指定数量行)
  /// </summary>
  /// <param name="rowIndex"></param>
  /// <param name="count"></param>
  public void CopyRows(int rowIndex,int count)
  {
   try
   {
    for(int n=1;n<=this.WorkSheetCount;n++)
    {
     workSheet = (Excel.Worksheet)workBook.Worksheets[n];
     range1 = (Excel.Range)workSheet.Rows[rowIndex,this.missing];

     for(int i=1;i<=count;i++)
     {
      range2 = (Excel.Range)workSheet.Rows[rowIndex + i,this.missing];
      range1.Copy(range2);
     }
    }
   }
   catch(Exception e)
   {
    this.KillExcelProcess();
    throw e;
   }
  }

  /// <summary>
  /// 复制行(在指定WorkSheet指定行下面复制指定数量行)
  /// </summary>
  /// <param name="sheetIndex"></param>
  /// <param name="rowIndex"></param>
  /// <param name="count"></param>
  public void CopyRows(int sheetIndex,int rowIndex,int count)
  {
   if(sheetIndex > this.WorkSheetCount)
   {
    this.KillExcelProcess();
    throw new Exception("索引超出范围,WorkSheet索引不能大于WorkSheet数量!");
   }

   try
   {
    workSheet = (Excel.Worksheet)workBook.Worksheets[sheetIndex];
    range1 = (Excel.Range)workSheet.Rows[rowIndex,this.missing];

    for(int i=1;i<=count;i++)
    {
     range2 = (Excel.Range)workSheet.Rows[rowIndex + i,this.missing];
     range1.Copy(range2);
    }
   }
   catch(Exception e)
   {
    this.KillExcelProcess();
    throw e;
   }
  }

原创粉丝点击