/// <summary>
/// 将指定索引列的数据相同的行合并,对指定WorkSheet操作
/// </summary>
/// <param name="columnIndex">要合并的列索引</param>
/// <param name="beginRowIndex">合并开始行索引</param>
/// <param name="rows">要合并的行数</param>
private void MergeRows(Excel.Worksheet sheet,int columnIndex,int beginRowIndex,int rows)
{
int beginIndex = beginRowIndex;
int count = 0;
string text1;
string text2;
if(sheet == null)
return;
for(int j=beginRowIndex;j<beginRowIndex+rows;j++)
{
range1 = (Excel.Range)sheet.Cells[j,columnIndex];
range2 = (Excel.Range)sheet.Cells[j+1,columnIndex];
text1 = range1.Text.ToString();
text2 = range2.Text.ToString();
if(text1 == text2)
{
++count;
}
else
{
if(count > 0)
{
this.MergeCells(sheet,beginIndex,columnIndex,beginIndex+count,columnIndex,text1);
}
beginIndex = j + 1; //设置开始合并行索引
count = 0; //计数器清0
}
}
}